PHP-inställningar styrs av en fil som heter ”php.ini”. Konfigurationsfilen läses när Apache webbserver startar. Om du vill ändra standardinställningarna för PHP bör du redigera filen ”php.ini” och starta om din webbserver.
Out-of-the-box fungerar PHP-inställningarna ganska bra, men genom att anpassa konfigurationsfilen kan du välja vad som kan fungera bäst för dig beroende på din hårdvaruarkitektur och programvarudesign.
I den här guiden visar vi hur du redigerar de grundläggande PHP-inställningarna på din Apache-webbserver som körs på Ubuntu 18.04 VPS.
Förutsättningar
- En VPS-plan (besök HostAdvices VPS-recensioner för de bästa VPS-leverantörerna)
- En icke-root-användare med sudo-privilegier
- Apache-webbserver
- PHP
Steg 1: Bestäm platsen för din php.ini-filen
Från och till måste du hantera den viktiga php.ini-filen. Filens placering kan variera lite beroende på vilken PHP-version som körs på din server.
Konfigurationsfilen ligger på:
/etc/php/php_version/apache2/php.ini
Om du till exempel kör PHP 7.0 kommer filen att ligga på:
/etc/php/7.0/apache2/php.ini
Det samma fallet gäller för PHP 7.2. Du hittar konfigurationsfilen på:
/etc/php/7.2/apache2/php.ini
Steg 2: Öppna PHP-konfigurationsfilen för redigering
När du har bestämt var filen finns är nästa steg att redigera den med en nanoeditor. Använd kommandot nedan för att öppna filen:
$ sudo nano php_ini_file
Till exempel:
$ sudo nano /etc/php/7.2/apache2/php.ini
Steg 3: Gör ändringar i filen php.ini
Som nämndes i början av artikeln kan standardinställningarna för PHP fungera för majoriteten av webbplatser eller webbprogram. Din miljö kan dock kräva att vissa värden justeras lite för att se till att din webbplats fungerar smidigt.
I de flesta fall kommer du att redigera nedanstående PHP-inställningar:
PHP max_execution_time
Detta anger den maximala exekveringstiden i sekunder som ett PHP-skript tillåts köra innan det avslutas. Ibland kan du ha krävande skript som ska köras i några minuter och du behöver ändra det här värdet. Standardvärdet är 30 sekunder men du kan ställa in det till ett större värde
Standardvärde:
max_execution_time =30
Ändra till valfritt värde t.ex. 1800
max_execution_time =1800
PHP upload_max_filesize
Standardvärdet för detta direktiv är 2M (två megabyte). Det här värdet styr den maximala storleken på filer som du laddar upp med hjälp av PHP-skript. Ibland är det nödvändigt att ändra det här värdet om du räknar med att ladda upp stora filer.
Om du till exempel laddar upp en stor databas via phpMyAdmin måste du ändra det här värdet.
Standardvärde:
upload_max_filesize=2M
Ändra till ett stort värde t.ex. 16M
upload_max_filesize=16M
PHP post_max_size
Detta värde begränsar mängden data som tillåts på postdata. Det påverkar vanligtvis PHP-skript som använder många webbformulär. Värdet styr även filer som laddas upp via ett PHP-skript, därför bör det alltid vara större än ”upload_max_filesize”. Standardvärdet för ’post_max_size’ är 8M.
Standardvärde:
post_max_size =8M
Anpassa det beroende på dina behov t.ex.
post_max_size =32M
PHP memory_limit
Standardvärdet för PHP 7.2 ’memory_limit’ är 128M. Ibland kan dåligt skrivna PHP-skript förbruka mycket av serverns minne och påverka andra program som körs på din VPS. För att undvika detta kontrollerar PHP ’ memory_limit’ mängden minne som tilldelas ett skript.
Standardvärde
memory_limit = 128M
Anpassat värde exempel
memory_limit = 256M
Du kan också använda -1 om du vill tilldela en obegränsad mängd minne till ditt PHP-skript beroende på det tillgängliga RAM-minnet på din VPS
memory_limit = -1
Inställningar för felrapportering i PHP
Du kan styra beteendet för felrapportering i PHP med hjälp av direktiven nedan:
display_errors:> Ställ in det här värdet på ”On” eller ”Off” beroende på om du vill att PHP ska visa fel när skript körs. I PHP 7.2 är standardvärdet ”Off”
display_errors = Off
Du kan aktivera felrapportering genom att ändra värdet till ”On”:
display_errors = On
log_errors: Det här värdet anger om fel från ett skript ska sparas i serverns loggfil. Istället för att visa felen för vanliga användare i en produktionsmiljö bör du logga dem. Standardvärdet i PHP 7.2 är ”On”
log_errors = On
Du kan stänga av felloggning genom att ändra värdet till:
log_errors = Off
error_reporting: Detta direktiv bestämmer nivån för felrapportering. För PHP-versioner större än 5.3 är standardvärdet ’E_ALL & ~E_DEPRECATED & ~E_STRICT’
error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT
Du kan ändra värdet beroende på vilka fel som ska rapporteras. Om du till exempel vill inkludera meddelanden använder du värdet nedan
error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT & ~E_NOTICE
PHP Date/Time settings
Du kan också ändra den standardtidszon som används av PHP-skript.
Leta upp raden:
$ ; date.timezone=
Oppmärksamma den genom att ta bort semikolonet och ange sedan din önskade tidszon. Du kan kontrollera listan över stödda tidszoner på den officiella PHP-webbplatsen (http://php.net/manual/en/timezones.php)
Om du till exempel vill ändra tidszonen till New York City använder du värdet nedan:
date.timezone= "America/New_York"
När du är klar med redigeringen av filen php.ini trycker du på CTRL + X, Y och trycker på Enter för att spara ändringarna. Du bör också starta om Apache för att inställningarna ska laddas om med kommandot nedan:
$ sudo service apache2 restart
Slutsats
I den här guiden har vi diskuterat hur du hittar och redigerar PHP-inställningar på din Ubuntu 18.04-server. Vi har också tagit dig igenom de grundläggande inställningarna som du bör justera för att optimera prestandan på din webbplats eller dina webbapplikationer. Vi tror att de ändringar du gör i din PHP-konfigurationsfil kommer att hjälpa dig att få en smidigare miljö för att köra dina webbplatser.