PHP: Różnice pomiędzy wersjami
Linia 10: | Linia 10: | ||
=== Konfiguracja PHP === | === Konfiguracja PHP === | ||
− | Konfiguracja interpretera PHP znajduje się w pliku <code class="directory"> | + | Konfiguracja interpretera PHP znajduje się w pliku <code class="directory">/usr/home/''login''/.user.ini</code>. Istnieje możliwość ustalenia własnego pliku <code class="directory">.user.ini</code>, oddzielnie dla każdego katalogu. Dokumentacja jest dostępna na [http://php.net/manual/pl/ini.list.php oficjalnej stronie PHP]. |
==== Przykłady ==== | ==== Przykłady ==== | ||
− | W poniższym przykładzie zostanie ustawiona zmienna error_reporting dla domeny test.pl. W tym celu należy zapisać do pliku <code class="directory"> | + | W poniższym przykładzie zostanie ustawiona zmienna error_reporting dla domeny test.pl. W tym celu należy zapisać do pliku <code class="directory">/usr/home/''login''/domains/test.pl/.user.ini</code> zawartość: |
error_reporting = E_ALL | E_WARNING | error_reporting = E_ALL | E_WARNING | ||
Linia 25: | Linia 25: | ||
display_errors = off | display_errors = off | ||
log_errors = on | log_errors = on | ||
− | error_log = | + | error_log = /usr/home/''login''/domains/test.pl/phperror.log |
− | Aby ograniczyć możliwość operacji na plikach przez PHP do określonego drzewa katalogów należy skorzystać z open_basedir. W tym celu należy zapisać do pliku <code class="directory"> | + | Aby ograniczyć możliwość operacji na plikach przez PHP do określonego drzewa katalogów należy skorzystać z open_basedir. W tym celu należy zapisać do pliku <code class="directory">/usr/home/''login''/domains/test.pl/.user.ini</code> zawartość (ścieżka wskazuje drzewo katalogów): |
open_basedir = "ścieżka:/tmp" | open_basedir = "ścieżka:/tmp" | ||
− | Istnieje również możliwość wykorzystania .user.ini przy php cli, w tym celu należy wydać polecenie <code>export PHPRC= | + | Istnieje również możliwość wykorzystania .user.ini przy php cli, w tym celu należy wydać polecenie <code>export PHPRC=/usr/home/''login''</code>, gdzie login to nazwa naszego konta, plik .user.ini należy umieścić w takim wypadku w katalogu domowym. |
==== Wersja PHP ==== | ==== Wersja PHP ==== | ||
− | Domyślna wersja PHP to 5.4. Wyboru wersji PHP można dokonać w pliku<code class="directory"> | + | Domyślna wersja PHP to 5.4. Wyboru wersji PHP można dokonać w pliku<code class="directory">/usr/home/''login''/domains/''domena''/public_html/.htaccess</code>. Należy wtedy dopisać do niego jedną z poniższych linii. |
AddType application/x-httpd-php53 .php | AddType application/x-httpd-php53 .php | ||
AddType application/x-httpd-php54 .php | AddType application/x-httpd-php54 .php | ||
Linia 41: | Linia 41: | ||
==== Własne strony błędów ==== | ==== Własne strony błędów ==== | ||
− | Użytkownik może z łatwością utworzyć własne strony błędów dla swojej strony. W tym celu należy w głównym katalogu domeny (np. <code class="directory"> | + | Użytkownik może z łatwością utworzyć własne strony błędów dla swojej strony. W tym celu należy w głównym katalogu domeny (np. <code class="directory">/usr/home/''login''/domains/''domena''/public_html/</code>) utworzyć katalog <code class="directory>errors</code> i umieszczać w nim statyczne strony błędów. Kod PHP nie zostanie wykonany, tylko wyświetlony użytkownikowi. Poniżej prezentujemy listę stron błędów, które użytkownik może zmieniać: |
{| class="wikitable" | {| class="wikitable" |
Wersja z 18:37, 6 mar 2015
PHP to obiektowy język programowania zaprojektowany do generowania stron internetowych i budowania aplikacji webowych w czasie rzeczywistym.
Spis treści
Wstępna konfiguracja domeny
Do uruchomienia strony napisanej w PHP należy pierw zadbać o prawidłową konfigurację samej domeny. Przed przystąpieniem do dalszych kroków należy upewnić się, że:
- Domena jest prawidłowo dodana i skonfigurowana w naszym systemie DNS,
- Została dodana Strona WWW z wskazaniem typu PHP.
Konfiguracja PHP
Konfiguracja interpretera PHP znajduje się w pliku /usr/home/login/.user.ini
. Istnieje możliwość ustalenia własnego pliku .user.ini
, oddzielnie dla każdego katalogu. Dokumentacja jest dostępna na oficjalnej stronie PHP.
Przykłady
W poniższym przykładzie zostanie ustawiona zmienna error_reporting dla domeny test.pl. W tym celu należy zapisać do pliku /usr/home/login/domains/test.pl/.user.ini
zawartość:
error_reporting = E_ALL | E_WARNING
Zwiększenie ilości pamięci dla interpretatora PHP:
memory_limit = 256M
Zwiększenie max_input_vars:
max_input_vars = 6000
Zapisywanie error logów php do pliku:
display_errors = off log_errors = on error_log = /usr/home/login/domains/test.pl/phperror.log
Aby ograniczyć możliwość operacji na plikach przez PHP do określonego drzewa katalogów należy skorzystać z open_basedir. W tym celu należy zapisać do pliku /usr/home/login/domains/test.pl/.user.ini
zawartość (ścieżka wskazuje drzewo katalogów):
open_basedir = "ścieżka:/tmp"
Istnieje również możliwość wykorzystania .user.ini przy php cli, w tym celu należy wydać polecenie export PHPRC=/usr/home/login
, gdzie login to nazwa naszego konta, plik .user.ini należy umieścić w takim wypadku w katalogu domowym.
Wersja PHP
Domyślna wersja PHP to 5.4. Wyboru wersji PHP można dokonać w pliku/usr/home/login/domains/domena/public_html/.htaccess
. Należy wtedy dopisać do niego jedną z poniższych linii.
AddType application/x-httpd-php53 .php AddType application/x-httpd-php54 .php AddType application/x-httpd-php55 .php AddType application/x-httpd-php56 .php
Własne strony błędów
Użytkownik może z łatwością utworzyć własne strony błędów dla swojej strony. W tym celu należy w głównym katalogu domeny (np. /usr/home/login/domains/domena/public_html/
) utworzyć katalog errors
i umieszczać w nim statyczne strony błędów. Kod PHP nie zostanie wykonany, tylko wyświetlony użytkownikowi. Poniżej prezentujemy listę stron błędów, które użytkownik może zmieniać:
Kod błędu | Plik ze stroną | Opis błędu |
---|---|---|
401 | errors/401.html | wyświetlany po błędnej autoryzacji. |
403 | errors/403.html | brak dostępu do pliku/katalogu. |
404 | errors/404.html | plik/katalog nie istnieje. |
500 | errors/500.html | błąd serwera (najczęsciej błędne wpisy w .htaccess). |
502 | errors/502.html | odrzucenie żądania przez backend/fastcgi (php) lub przekroczenie limitu interpretatorów. |
503 | errors/503.html | przekroczenie limitu interpretatorów. |
504 | errors/504.html | przekroczenie czasu na wykonanie żądania. |
Phalcon
Na serwerach MyDevil dostępny jest wydajny framework Phalcon dla wersji PHP >= 5.3. Aby załadować moduł należy w skrypcie php dopisaćdl('phalcon.so');