PHP – instalacja i konfiguracja (najważniejsze opcje konfiguracyjne) (Marek Downar)

16
PHP – instalacja i konfiguracja (najważniejsze opcje konfiguracyjne) (Marek Downar)

description

PHP – instalacja i konfiguracja (najważniejsze opcje konfiguracyjne) (Marek Downar). PHP - przypomnienie. Skrypty wywoływane z linii poleceń Aplikacje po stronie klienta Skrypty po stronie serwera Integracja z serwerem poprzez: SAPI dla: - PowerPoint PPT Presentation

Transcript of PHP – instalacja i konfiguracja (najważniejsze opcje konfiguracyjne) (Marek Downar)

Page 1: PHP – instalacja i konfiguracja (najważniejsze opcje konfiguracyjne) (Marek Downar)

PHP – instalacja i konfiguracja

(najważniejsze opcje konfiguracyjne)

(Marek Downar)

Page 2: PHP – instalacja i konfiguracja (najważniejsze opcje konfiguracyjne) (Marek Downar)

PHP - przypomnienie

Skrypty wywoływane z linii poleceń

Aplikacje po stronie klienta

Skrypty po stronie serwera

Integracja z serwerem poprzez: SAPI dla:

Apache, Microsoft Internet Information Server, Netscape i iPlanet

ISAPI – interfejs modułów Microsoft Można używać go jako CGI lub FastCGI

Page 3: PHP – instalacja i konfiguracja (najważniejsze opcje konfiguracyjne) (Marek Downar)

Architektura PHP

Page 4: PHP – instalacja i konfiguracja (najważniejsze opcje konfiguracyjne) (Marek Downar)

Instalacja PHP5 dla Apache2

Instalacja silnika PHP,

załadowanie modułu php5_module do serwera LoadModule php5_module /usr/lib/apache2/modules/libphp5.so

wskazanie formatu plików php

AddType application/x-httpd-php .php

dodanie pliku index.php serwowanego domyślnie przy wyświetlaniu zawartości katalogu

DirectoryIndex index.php index.html

Page 5: PHP – instalacja i konfiguracja (najważniejsze opcje konfiguracyjne) (Marek Downar)

Instalacja dodatkowych modułów

Podczas instalacji w systemie Windows wybranie dodatkowych modułów z listy Extensions, w systemie Linux instalacja przy pomocy menadżera pakietów

Po instalacji modułu należy upewnić się, czy do pliku php.ini została dodana deklaracja nowego rozszerzenia (w przypadku Linux w folderze /etc/php5/apache2/conf.d/ w pliku o nazwie modułu z rozszerzeniem *.ini)extension=nazwa_modułu.so

Page 6: PHP – instalacja i konfiguracja (najważniejsze opcje konfiguracyjne) (Marek Downar)

Możliwa konfiguracja PHP

Apache: <IfModule mod_php5.c>

php_value default_mimetype ”text/css” php_admin_flag safe_mode on

</IfModule>

Rejestr systemowy Windows HKLM\SOFTWARE\PHP\Per Directory Values\

sciezka_do_katalogu

ini_set(), ini_get(), phpinfo(), get_cfg_var()

php.ini

Page 7: PHP – instalacja i konfiguracja (najważniejsze opcje konfiguracyjne) (Marek Downar)

Poziomy konfiguracji PHP

PHP_INI_USER – ini_set(), rejestr

PHP_INI_PERDIR php.ini httpd.conf .htaccess

PHP_INI_SYSTEM php.ini, httpd.conf

PHP_INI_ALL wszędzie

Page 8: PHP – instalacja i konfiguracja (najważniejsze opcje konfiguracyjne) (Marek Downar)

Konfiguracja PHP (apache)

Także na poziomie plików konfiguracyjnych serwera Apache - httpd.conf (.htaccess) – Options AllowOverride lub AllowOverride All

php_value name value (ALL,PERDIR)

php_flag name on|off (ALL,PERDIR)

php_admin_value name value

php_admin_flag name on|off

Page 9: PHP – instalacja i konfiguracja (najważniejsze opcje konfiguracyjne) (Marek Downar)

Poszukiwania php.ini

SAPI

PHPRC

HKEY_LOCAL_MACHINE\SOFTWARE\PHP\x.y.z – IniFilePath

HKEY_LOCAL_MACHINE\SOFTWARE\PHP - IniFilePath

Bieżący katalog

Katalg serwera, bądź php

Katalog systemu windows

Page 10: PHP – instalacja i konfiguracja (najważniejsze opcje konfiguracyjne) (Marek Downar)

Konfiguracja PHP – php.ini

short_open_tag – dyrektywa określająca dopuszczalność skróconej formy <? zamiast <?php (skrócony tag jednak nie jest zalecany z uwagi na niezgodność ze standardem XML) (<?= zamiast <?php echo)

default_charset – domyślne kodowanie, w którym generowana jest strona (nagłówek Content-type)

default_mimetype – domyślny format przesyłanych danych

precision – liczba miejsc po przecinku dla zmiennych typu float

Page 11: PHP – instalacja i konfiguracja (najważniejsze opcje konfiguracyjne) (Marek Downar)

Konfiguracja PHP – php.ini

expose_php – ujawnienie czy na serwerze wykorzystywane jest php poprzez dołączenie do nagłówka serwera sygnatury php

disable_functions – blokuje użycie podanych funkcji – stosowane ze względów bezpieczeństwa

disable_classes – blokuje użycie podanych klas – stosowane ze względów bezpieczeństwa

memory_limit – maksymalna ilość bajtów, jaką może zaalokować skrypt w czasie wykonywania (zabezpieczenie przez wykorzystaniem wszystkich zasobów komputera przez słabo napisany skrypt, bądź przez skrypt złośliwy)

max_execution_time – maksymalna ilość sekund przeznaczona na wykonywanie skryptu

max_input_time – maksymalna ilość sekund przeznaczona do parsowania danych wejściowych (plików, POST, GET)

post_max_size – dozwolony maksymalny rozmiar danych przesyłanych z pomocą żądania POST (>upload_max_filesize <memory_limit)

Page 12: PHP – instalacja i konfiguracja (najważniejsze opcje konfiguracyjne) (Marek Downar)

Konfiguracja PHP – php.ini

auto_prepend_file – automatyczne dołączanie i wykonywanie skryptu przed wołanym skryptem (działanie jak funkcja require() dołączona na początku wykonywanego skryptu)

auto_append_file – automatyczne dołączanie i wykonywanie skryptu po wykonaniu wołanego skryptu (działanie jak funkcja require() dołączona na koniec wykonywanego skryptu)

Page 13: PHP – instalacja i konfiguracja (najważniejsze opcje konfiguracyjne) (Marek Downar)

Konfiguracja PHP – php.ini (ścieżki i katalogi)

include_path – lista ścieżek, gdzie poszukiwane są skrypty dołączane przy pomocy funkcji, takich jak require(), include(), fopen(),

open_basedir – ograniczenie dla skryptów PHP dostępu do plików do podanych katalogów,

extension_dir – wskazanie silnikowi PHP katalogu, w którym mieszczą się dynamiczne dołączane rozszerzenia,

Page 14: PHP – instalacja i konfiguracja (najważniejsze opcje konfiguracyjne) (Marek Downar)

Konfiguracja PHP – php.ini (pliki wysyłane na serwer)

file_uploads – czy dopuszczalne jest odbieranie plików,

upload_tmp_dir – tymczasowy katalog wykorzystywany przy odbieraniu plików,

upload_max_filesize – dopuszczalna maksymalna wielkość odbieranych plików,

max_file_uploads – dopuszczalna maksymalna ilość plików odbieranych jednocześnie

Page 15: PHP – instalacja i konfiguracja (najważniejsze opcje konfiguracyjne) (Marek Downar)

Konfiguracja PHP – php.ini(sesja)

session.use_cookies – określa czy używać cookie do przechowywania sesji,

session.name – nazwa identyfikatora sesji (domyślnie PHPSSID),

session.auto_start – inicjalizacja sesji podczas żądania,

session.cookie_lifetime – określenie długości życia danego cookie.

Page 16: PHP – instalacja i konfiguracja (najważniejsze opcje konfiguracyjne) (Marek Downar)

Konfiguracja PHP – php.ini (buforowanie stron)

output_buffering – pozwala na buforowanie strony przed wysłaniem jej do przeglądarki (dzięki niej m.in. możliwe jest ustawienie nagłówków w dowolnym miejscu skryptu – pozbywamy się problemu ”headers already sent”). Możliwe jest określenie także wielkości bufora – z tym ostrożnie.

zlib.output_compression – ustawienie kompresji strony przed wysłaniem jej do przeglądarki – oszczędność transferu i szybkość dostarczania strony – konieczna uprzednia instalacja biblioteki zlib