Jak zmienić wersję PHP na serwerze WWW?

Mając podpiętą do serwera domenę i działającą stronę, niektóre skrypty, które będziesz chciał uruchomić będą wymagać zmian w parametrach ustawionej wersji PHP lub zmianę samej aktywnej wersji. Postępując według instrukcji zamieszczonych poniżej zmiana wersji, czy parametrów PHP nie będzie stanowić żadnego problemu.

Logowanie do panelu DirectAdmin

Aby zalogować się do panelu DirectAdmin musisz użyć danych logowania przesłanych mailowo po założeniu serwera WWW. W tej wiadomości znajduje się również adres panelu serwera (zawsze zakończony ":2222").
W razie potrzeby można dokonać resetu hasła do serwera, w panelu klienta, wiadomość z nowym hasłem i pozostałymi danymi przyjdzie na adres email przypisany do konta.

Przy logowaniu należy oczywiście podać nazwę konta i hasło.

Logowanie do DirectAdmin

Zmiana wersji PHP na serwerze WWW

Po zalogowaniu wybierz swoją domenę z listy aktualnie podpiętych do serwera (Jeżeli Twoja domena nie jest jeszcze podpięta do Twojego serwera, możesz ją podpiąć, korzystając z instrukcji, znajdującej się tutaj). Wybierz domenę, której chcesz zmienić wersję PHP lub edytować aktualnie ustawioną. Przejdź do Zarządzaj -> Ustawienia PHP.

DirectAdmin - wybór domeny

Zobaczysz tutaj dostępne wersje PHP. Aktywna wersja będzie oznaczona odpowiednim checkboxem w kolumnie Aktywne. Aby zmienić wersję na inną, kliknij w checkbox w tej samej kolumnie, przy odpowiedniej wersji PHP.

Ustawienia PHP - wybór wersji

Obecnie moja domena ma ustawioną wersję PHP 7.2. Po zmianie (u mnie na wersję 7.3) pojawi się komunikat odnośnie nowej, aktywnej wersji PHP.

Zmiana wersji PHP

Edycja parametrów PHP

Jeśli chcesz zmienić parametry aktywnej wersji PHP, w oknie konfiguracji kliknik w koło zębate, przy aktywnej wersji, w kolumnie opcje. 

jak_zmienic_wersje_php_na_serwerze_www_5.png

Zobaczysz listę dostępnych do zmiany parametrów, wraz z zakresem, jaki możesz podać. Kiedy wykonasz już potrzebne zmiany, kliknij "zapisz" po prawej stronie, zaraz pod parametrami PHP.

jak_zmienic_wersje_php_na_serwerze_www_6.png

Powienieneś zobaczyć komunikat o poprawnym zapisaniu parametrów.

Zapisane parametry PHP

Większość wersji PHP ma dostępne te same parametry, wyjątkiem jest PHP 5.3, które ma 3 parametry niedostępne w nowszych wersjach. Niezależnie od wersji edycja parametrów wygląda tak samo.

Parametry jakie można tutaj edytować mogą nie być dla wszystkich w pełni zrozumiałe, dlatego poniżej zamieściłem krótki opis poszczególnych parametrów, które można edytować w konfiguracji PHP. Parametry dostępne we wszystkich wersjach PHP:

  • allow_url_fopen – pozwala na otwieranie zewnętrznych adresów URL w skryptach PHP
  • allow_url_include - określa czy możliwe jest dołączanie zdalnych plików korzystając z instrukcji include lub require w skryptach
  • display_errors - odpowiada za wyświetlanie błędów użytkownikom lub ukrywanie ich.
  • display_startup_errors – nawet kiedy display_errors jest włączone (on), nie wyświetlane są błędy podczas sekwencji uruchamiania PHP. Ta dyrektywa pozwala na ich wyświetlanie. Zaleca się nie włączać tej opcji poza debugowaniem skryptu.
  • file_uploads – określa czy pliki mogą być przesyłane na serwer za pomocą PHP, włączenie tej opcji niesie za sobą pewne ryzyko. Pliki przesyłane na serwer mogą nie być tym czym się wydają, mogą to być złośliwe skrypty, pliki wykonywalne wyglądające jak obrazy, itp. Jeżeli przesyłanie plików na serwer nie jest konieczne zaleca się wyłączenie tej opcji (jest ona domyślnie włączona)
  • log_errors – ustala czy błędy PHP będą logowane, dotyczy to wyłącznie logów po stronie klienta. Logi systemowe są osobno zbierane przez nasze maszyny
  • memory_limit – decyduje o limicie pamięci dla wykonywanych skryptów na serwerze
  • max_execution_time – ustala maksymalny czas (w sekundach), w jakim skrypt może działać, zanim zostanie zakończony. Pozwala to zapobiegać nadmiernemu obciążeniu serwera przez źle napisane skrypty
  • max_input_nesting_level – ustala maksymalne zagnieżdżenie funkcji wprowadzających zmienne (np. $_GET, $_POST)
  • max_input_time – konfiguruje maksymalny czas w sekundach w jakim skrypt może analizować dane wejściowe, takie jak POST i GET. Odliczanie czasu rozpoczyna się w momencie wywołania PHP na serwerze, a kończy się kiedy zaczyna się wykonywanie skryptu
  • post_max_size – określa maksymalną wielkość danych przesyłanych metodą POST.
  • short_open_tag - pozwala na stosowanie tagu <? ?>.
  • upload_max_filesize – określa maksymalny rozmiar pliku, który można przesłać na serwer

Parametry dostępne tylko w PHP w wersji 5.3:

  • register_globals  – kiedy parametr jest włączony, skrypt PHP ma automatycznie ustawione zmienne na podstawie danych pochodzących z żądania strony. NIEBEZPIECZNY i przestarzały. Powinien być zawsze WYŁĄCZONY.
  • magic_quotes_gpc  – ustawia status magic_quotes dla operacji GPC (Get, Post, Cookie). Kiedy jest włączone (on) wszystkie ' (pojedyncze cudzysłowy), '' (podwójne cudzysłowy), (backslashe) i NULL są poprzedzone backslashem
  • magic_quotes_runetime  - Jeśli zostanie włączone większość funkcji, które zwracają dane z zewnętrznych źródeł, takich jak bazy danych i pliki tekstowe, będą miały cudzysłowy poprzedzone backslashem

Podsumowanie

Wiedza o tym jak zmienić wersję PHP na serwerze WWW i edytować jej parametry może okazać się przydatna przy pracy ze stronami WWW obsługującymi skrypty PHP. Niektóre skrypty mają wymagania odnośnie wersji PHP lub parametrów i bez odpowiedniej konfiguracji nie będą działać poprawnie lub nie będą działać wcale.