How to Edit PHP Settings in Apache on an Ubuntu 18.04 VPS or Dedicated Server

Ustawienia PHP są kontrolowane przez plik o nazwie 'php.ini’. Plik konfiguracyjny jest odczytywany podczas uruchamiania serwera WWW Apache. Aby zmienić domyślne ustawienia PHP, należy edytować plik 'php.ini’ i zrestartować serwer WWW.

Out-of-the-box, ustawienia PHP działają całkiem dobrze, ale dostosowanie pliku konfiguracyjnego pozwala wybrać, co może działać najlepiej dla Ciebie w zależności od architektury sprzętowej i projektu oprogramowania.

W tym przewodniku, zamierzamy pokazać, jak edytować podstawowe ustawienia PHP na serwerze Apache działającym na Ubuntu 18.04 VPS.

Wymagania wstępne

  • Plan VPS (odwiedź recenzje HostAdvice’s VPS dla najlepszych dostawców VPS)
  • Użytkownik non-root z uprawnieniami sudo
  • Serwer WWW Apache
  • PHP

Krok 1: Określ lokalizację swojego pliku php.ini

Od czasu do czasu, będziesz musiał zarządzać krytycznym plikiem php.ini. Lokalizacja pliku może się nieco różnić w zależności od wersji PHP działającej na twoim serwerze.

Plik konfiguracyjny znajduje się na:

/etc/php/php_version/apache2/php.ini

Na przykład, jeśli używasz PHP 7.0, plik będzie znajdował się na:

/etc/php/7.0/apache2/php.ini

Ten sam przypadek dotyczy PHP 7.2. Możesz znaleźć plik konfiguracyjny pod adresem:

/etc/php/7.2/apache2/php.ini

Krok 2: Otwarcie pliku konfiguracyjnego PHP do edycji

Po określeniu lokalizacji pliku, następnym krokiem jest jego edycja przy użyciu edytora nano. Użyj poniższego polecenia, aby otworzyć plik:

$ sudo nano php_ini_file

Na przykład:

$ sudo nano /etc/php/7.2/apache2/php.ini

Krok 3: Wprowadzanie zmian w pliku php.ini

Jak wspomniano na początku artykułu, domyślne ustawienia PHP mogą działać dla większości stron lub aplikacji internetowych. Jednakże, twoje środowisko może wymagać pewnych wartości, aby zapewnić, że twoja strona działa płynnie.

W większości przypadków, będziesz edytował poniższe ustawienia PHP:

PHP max_execution_time

To ustawia maksymalny czas wykonania w sekundach, który skrypt PHP może uruchomić zanim zostanie przerwany. Czasami możesz mieć wymagające skrypty, które powinny działać przez kilka minut i musisz zmienić tę wartość. Domyślną wartością jest 30 sekund, ale możesz ustawić ją na większą

Wartość domyślna:

max_execution_time =30

Zmień na dowolną wartość np. 1800

max_execution_time =1800

PHP upload_max_filesize

Domyślną wartością dla tej dyrektywy jest 2M (dwa megabajty). Ta wartość kontroluje maksymalny rozmiar plików, które możesz załadować za pomocą skryptów PHP. Czasami konieczna jest zmiana tej wartości, jeśli przewidujesz wgrywanie dużych plików.

Na przykład, jeśli wgrywasz dużą bazę danych przez phpMyAdmin, będziesz musiał zmienić tę wartość.

Domyślna wartość:

upload_max_filesize=2M

Zmień na dużą wartość np. 16M

upload_max_filesize=16M

PHP post_max_size

Ta wartość ogranicza ilość danych dozwolonych w poście. Zwykle wpływa na skrypty PHP, które używają dużo formularzy internetowych. Wartość ta kontroluje również pliki przesyłane przez skrypt PHP, dlatego powinna być zawsze większa niż 'upload_max_filesize’. Domyślna wartość dla 'post_max_size’ to 8M.

Default value:

post_max_size =8M

Dostosuj ją w zależności od swoich potrzeb np.

post_max_size =32M

PHP memory_limit

Domyślna wartość dla PHP 7.2 'memory_limit’ to 128M. Czasami, źle napisane skrypty PHP mogą zużywać dużo pamięci serwera i wpływać na inne aplikacje działające na Twoim VPS. Aby tego uniknąć, 'memory_limit’ PHP kontroluje ilość pamięci przydzielonej do skryptu.

Wartość domyślna

memory_limit = 128M

Przykładowa wartość własna

memory_limit = 256M

Możesz również użyć -1 jeśli chcesz przydzielić nieograniczoną ilość pamięci do skryptu PHP w zależności od dostępnej pamięci RAM na twoim VPS

memory_limit = -1

Ustawienia raportowania błędów PHP

Możesz kontrolować zachowanie raportowania błędów w PHP używając poniższych dyrektyw:

display_errors:> Ustaw tę wartość na 'On’ lub 'Off’ w zależności od tego, czy chcesz, aby PHP wyświetlało błędy podczas uruchamiania skryptów. W PHP 7.2 domyślną wartością jest 'Off’

display_errors = Off

Możesz włączyć raportowanie błędów zmieniając wartość na 'On’:

display_errors = On

log_errors: Ta wartość mówi, czy błędy ze skryptu powinny być zapisywane w pliku dziennika serwera. Zamiast wyświetlać błędy zwykłym użytkownikom w środowisku produkcyjnym, powinieneś je logować. Domyślną wartością w PHP 7.2 jest 'On’

log_errors = On

Możesz wyłączyć logowanie błędów zmieniając wartość na:

log_errors = Off

error_reporting: Ta dyrektywa dyktuje poziom raportowania błędów. Dla wersji PHP większych niż 5.3, domyślną wartością jest 'E_ALL & ~E_DEPRECATED & ~E_STRICT’

error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT

Możesz zmienić wartość w zależności od błędów, które mają być raportowane. Na przykład, aby uwzględnić powiadomienia, użyj wartości poniżej

error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT & ~E_NOTICE

Ustawienia daty/czasu PHP

Możesz także zmienić domyślną strefę czasową używaną przez skrypty PHP.

Znajdź linię:

$ ; date.timezone=

Ukomentuj ją usuwając średnik, a następnie wprowadź preferowaną strefę czasową. Możesz sprawdzić listę obsługiwanych stref czasowych na oficjalnej stronie PHP (http://php.net/manual/en/timezones.php)

Na przykład, jeśli chcesz zmienić strefę czasową na Nowy Jork, użyj poniższej wartości:

date.timezone= "America/New_York"

Po zakończeniu edycji pliku php.ini, naciśnij CTRL + X, Y i naciśnij Enter, aby zapisać zmiany. Powinieneś również zrestartować Apache, aby ustawienia zostały ponownie załadowane za pomocą poniższej komendy:

$ sudo service apache2 restart

Koniec

W tym przewodniku, omówiliśmy, jak zlokalizować i edytować ustawienia PHP na serwerze Ubuntu 18.04. Zapoznaliśmy Cię również z podstawowymi ustawieniami, które powinieneś zmienić, aby zoptymalizować wydajność swojej strony internetowej lub aplikacji internetowych. Wierzymy, że zmiany, które wprowadzisz w swoim pliku konfiguracyjnym PHP, pomogą ci uzyskać bardziej płynne środowisko do uruchamiania stron internetowych.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.