php.ini – zmiana ustawień w pliku konfiguracyjnym PHP

SPIS TREŚCI

Co to jest php.ini?

Istnieje możliwość umieszczenia w dowolnym katalogu na serwerze pliku php.ini, zawierającego dyrektywy konfiguracyjne PHP. Plik php.ini pozwala na dostosowanie środowiska PHP do własnych potrzeb.

Plik php.ini jest to plik konfiguracyjny, który pozwala zdefiniować ustawienia PHP na całym serwerze lub w danym katalogu, do którego domena została przekierowana. Stosowanie pliku php.ini do przechowywania konfiguracji jest bardzo dobrym rozwiązaniem z uwagi na:
  • niezaśmiecanie pamięci stałymi,
  • możliwość grupowania danych w sekcje,
  • możliwość zdefiniowania ustawień PHP tylko dla wybranej domeny (katalogu).
Plik php.ini tworzysz samodzielnie i umieszczasz na serwerze FTP.

Dyrektywy dotyczące konfiguracji powinny być wpisywane zgodnie ze składnią:

  • dyrektywa = wartość
Możesz korzystać z dwóch poniższych przykładów, które ustawiają wskazaną dyrektywę jako włączoną:
asp_tags = 1
lub
asp_tags = on
WAŻNE! W nazwach dyrektyw rozróżniane są wielkości liter. Natomiast tak zwane „puste znaki” (np. spacja), linie poprzedzone znakiem średnika są ignorowane.

Jak używać pliku php.ini?

  • Jeśli domena jest przekierowana do podkatalogu, to plik php.ini musi zostać umieszczony właśnie w tym katalogu.
  • Jeśli natomiast domena jest skierowana na katalog główny serwera „/”, to plik php.ini musi zostać umieszczony w katalogu głównym.
    UWAGA! W przypadku hostingu Apache i wersji PHP od 8.0, jeśli domena jest przekierowana na katalog wraz z wyłączoną funkcją separacji serwisu, to plik php.ini musi zostać umieszczony w katalogu głównym serwera.

Plik php.ini musi być umieszczony w katalogu głównym, do którego domena jest przekierowana.
  • Jeśli domena jest przekierowana do podkatalogu wraz z włączoną funkcją separacji serwisu, to plik php.ini musi zostać umieszczony właśnie w tym katalogu.
  • Jeśli natomiast domena jest skierowana na katalog główny serwera „/”, to plik php.ini musi zostać umieszczony w katalogu głównym.
  • Jeśli domena jest przekierowana na katalog wraz z wyłączoną funkcją separacji serwisu, to plik php.ini musi zostać umieszczony w katalogu głównym serwera.

Utwórz plik php.ini, umieść w nim stosowne dyrektywy i opublikuj go w odpowiedniej lokalizacji na serwerze.

WAŻNE! Na końcu tego artykułu możesz pobrać przykładowy plik php.ini oraz znaleźć zawartość przykładowego pliku php.ini.

Popularne dyrektywy PHP, które możesz zmienić na serwerze w home.pl

Poniżej znajdziesz listę najważniejszych dyrektyw, które możesz zmienić na serwerze w home.pl. Umieść wybrane dyrektywy w pliku php.ini i opublikuj ten plik na serwerze w odpowiedniej lokalizacji:
Dyrektywa Domyślna Wartość Do czego służy?
asp_tags Off Możliwość użycia tagów <% %> zamiast <?php ?>.
display_errors On Odpowiada za wyświetlanie błędów użytkownikom lub ukrywanie ich.
error_log no value Określa, gdzie będą zapisywane logi. Podajemy ścieżkę od katalogu ROOT do pliku z logami np. „/logs/php_errors.log”.
error_reporting Off Decyduje, jaki rodzaj błędów będzie logowany:

  • E_ALL
  • E_NOTICE
  • E_STRICT

Stosowane kombinacje:
E_ALL & ~E_NOTICE

include_path .:/:/usr/local/php/pear5 Wskazuje gdzie funkcje require(), include(), fopen(), file(), readfile() and file_get_contents() mają szukać plików.
log_errors Off Ustala, czy błędy będą logowane (dotyczy wyłącznie logowania w zakresie Klienta, logi systemowe gromadzone są przez home.pl w ramach fizycznego serwera).
magic_quotes_gpc On W przeszłości wykorzystywane głównie do zabezpieczenia przed SQL Injection. Kliknij tutaj, aby sprawdzć jak wyłączyć funkcję magic_quotes_gpc na serwerze w home.pl.
memory_limit 128M Określa limit pamięci dla wykonywanych skryptów na serwerze. Domyślnie ustawiona wartość to 128M. Użytkownicy korzystający z serwerów Linii profesjonalnej mogą zwiększyć ten parametr do wartości 512 MB. Sprawdź: Parametry bezpieczeństwa serwerów home.pl.
post_max_size 64M Wielkość danych przesyłanych metodą POST.
register_globals Off Zmienne globalne odpowiadają za możliwość korzystania m.in. ze zmiennych przesyłanych do serwera.
safe_mode Off Włączenie safe_mode wprowadza w życie wszystkie podległe safe_mode zmienne.
safe_mode_exec_dir /usr/local/php/bin Funkcje system() i exec() nie uruchomią programu jeżeli nie znajduje się we wskazanej lokalizacji.
safe_mode_gid Off safe_mode domyślnie sprawdza UID użytkownika, ustawienie na ON sprawia ze sprawdzany bedzie GID.
short_open_tag On Zezwala na stosowanie krótszego tagu <? ?>.
upload_max_filesize 64M Musi być mniejsze lub równe wartości „post_max_size”.
max_input_vars 2000 Liczba zmiennych, którą można przekazać w żądaniu HTTP.
session.cookie_domain no value
Pod jaką domeną będzie obsługiwana sesja. Możliwe wartości:
  • session.cookie_domain=domena.pl
  • session.cookie_domain=www.domena.pl

Dla obsługi sesji spod wielu subdomen:

  • session.cookie_domain=.domena.pl
session.save_path /tmp Katalog, w którym będą przechowywane pliki sesji.

Przykładowa zawartość pliku php.ini:

error_log = /plik_logow.log
error_reporting =  E_ALL & ~E_NOTICE
log_errors = 1
display_errors = off

Więcej informacji o pozostałych ustawieniach PHP

Więcej informacji na temat pozostałych ustawień PHP, które możesz zmienić m.in. za pomocą pliku php.ini znajdziesz pod adresem: http://php.net/manual/en/ini.list.php

Na podanej stronie znajdziesz informacje o dostępnych ustawieniach PHP. Jeśli przy wybranej dyrektywie w kolumnie: „Changeable” będzie znajdowało się: „PHP_INI_SYSTEM”, będzie to oznaczać, że akurat tego ustawienia nie będziesz mógł zmienić na serwerze w home.pl.

Twoja strona wymaga aktualizacji PHP? Sprawdź: jak zmienić wersję PHP

Załączniki do pobrania:

  • Czy artykuł był pomocny ?
  • Tak   Nie