Luku 14 · 14.5
PHP-asetukset kansiokohtaisesti ja .htaccess-tiedoston kautta
Joskus haluat, että yksi kansio toimii eri tavalla kuin muu verkkosivustosi. Esimerkiksi yksi skripti, joka tarvitsee enemmän muistia tai korkeamman latausrajan. Tämä onnistuu .htaccess-tiedostolla kyseisessä kansiossa. Palvelimemme käyttävät LiteSpeediä, ja LiteSpeed lukee PHP-säännöt .htaccess-tiedostosta.
Huomaa: Virhe .htaccess-tiedostossa voi tehdä koko verkkosivustosi (tai kansion) tavoittamattomaksi virheellä 500. Tee ensin kopio tiedostosta ja testaa heti tallennuksen jälkeen. Lue artikkelista Piilotiedostojen, kuten .htaccess, näyttäminen ja muokkaaminen, miten löydät ja muokkaat .htaccess-tiedostoa.
Yhden PHP-asetuksen muuttaminen yhdelle kansiolle
Lisää kyseisen kansion .htaccess-tiedostoon tällaisia rivejä:
php_value upload_max_filesize 128M
php_value post_max_size 128M
php_value memory_limit 384M
php_value max_execution_time 300
Päälle tai pois kytkettäville asetuksille käytä php_flag, esimerkiksi php_flag display_errors off.
Rivit koskevat kyseistä kansiota ja kaikkia sen alikansioita. Jos lisäät ne public_html-kansion .htaccess-tiedostoon, ne koskevat koko verkkosivustoasi.
Vinkki: Haluatko muuttaa asetusta koko paketillesi? Tee se mieluummin kohdassa Select PHP version (katso PHP-asetukset: upload_max_filesize, memory_limit ja max_execution_time). Näin kaikki asetukset ovat yhdessä paikassa, etkä myöhemmin unohda, että .htaccess-tiedostossa on vielä rivejä.
Eri PHP-version käyttäminen yhdelle kansiolle ei onnistu
Koko pakettisi käyttää versiota, jonka olet valinnut kohdassa Select PHP version (katso PHP-version valinta (Select PHP version)). Eri version käyttäminen yhdelle kansiolle tai alidomainille, esimerkiksi rivillä SetHandler application/x-lsphp83 .htaccess-tiedostossa, ei toimi meidän palvelimillamme. Jos tällainen rivi on vielä .htaccess-tiedostossa, poista se.
Täytyykö yhden verkkosivuston todella toimia eri versiolla kuin muiden? Siirrä kyseinen verkkosivusto silloin omaan erilliseen hostingpakettiin. Toimiiko vanha verkkosivusto enää vain vanhalla versiolla, päivitä se silloin ajan tasalle (katso Virheet PHP-päivityksen jälkeen ja virhelokin löytäminen).
Tarkista, että se toimii
- Luo kansioon tiedosto info-test.php, jossa on tämä yksi rivi: <?php echo PHP_VERSION, ' ', ini_get('memory_limit');
- Avaa se selaimessasi, esimerkiksi https://www.omadomain.fi/vanhakauppa/info-test.php. Näet PHP-version ja muistin.
- Poista tiedosto heti sen jälkeen. Älä jätä verkkosivustollesi testitiedostoja, jotka sisältävät tietoa palvelimestasi.
Mikä ei toimi?
- Oma php.ini -tiedosto kansiossasi ei vaikuta mihinkään. Käytä Select PHP version -toimintoa tai .htaccess-tiedostoa.
- disable_functions ja open_basedir -asetuksia ei voi muuttaa .htaccess-tiedostolla. Ne liittyvät palvelimen tietoturvaan.
- Arvot, jotka on asetettu PHP Settings -kohdassa domainin ylikirjoituksena (katso PHP Settings DirectAdminissa vai Select PHP version: mikä on ero?), ohittavat .htaccess-tiedoston asetukset.
