PHP/Inne/Software
Software
edytujRozdział ten jest przeznaczony dla wszystkich zainteresowanych rozwojem podręcznika. Opisuje wszystkie wytyczne dotyczące oprogramowania. Przestrzeganie tych zaleceń jest obowiązkowe, gdyż inaczej bardzo łatwo o nieścisłości między różnymi partiami tekstu oraz pytania czytelników, dlaczego część skryptów nie chce im działać.
Unix/Linux
edytujNajważniejszym punktem jest opis instalacji z samodzielnie skompilowanego kodu źródłowego. Opisy instalacji z gotowych pakietów są tylko dodatkiem z takiego powodu, że jeśli ktoś już używa jakiejś dystrybucji, to przeważnie wie, jak się posługiwać dołączonym do niej menedżerem pakietów i procesu tego nie trzeba mu łopatologicznie powtarzać. Pragniemy też uniknąć sytuacji, gdy opis instalacji zmieni się w wyliczankę wszystkich istniejących na świecie dystrybucji Linuksa, gdzie praktycznie jedyną różnicą jest nazwa menedżera pakietów, a brakuje jakichkolwiek informacji o późniejszej konfiguracji całości.
Można krótko wspomnieć o zestawach LAMP.
Apache
edytujSerwer Apache to wersja 2.0.55. Musi mieć on możliwości typowego serwera WWW, bez żadnych fajerwerków w stylu mod_rewrite (temat na inny podręcznik). Warunki stawiane serwerowi:
- Skrypty PHP są uruchamiane z dwóch katalogów: /var/www/ (różne narzędzia, np. phpMyAdmin) oraz /home/*/www - konto WWW dla każdego użytkownika w systemie ustawione dyrektywą <directory>, gdzie może normalnie pracować.
- Skrypty PHP muszą mieć rozszerzenie .php
PHP
edytujWersja: najnowsza, jaka istnieje; podręcznik jest aktualizowany na bieżąco wraz z ukazywaniem się kolejnych wersji. Aktualizacje dotyczą nie tylko opisów, ale też korekty skryptów tak, aby były zgodne z zaleceniami twórców projektu. Opisujemy wyłącznie kompilację z kodu źródłowego z następującymi dyrektywami:
- --with-apxs2=/usr/local/apache2/bin/apxs
- --with-config-file-path=/etc/apache
- --with-zlib
- --with-mysql=/usr/local/mysql
- --with-mysqli=/usr/local/mysql/bin/mysql_config
- --with-pdo-mysql=/usr/local/mysql/bin/mysql_config
- --with-gd
- --enable-gd-native-ttf
- --with-libxml-dir=/usr/local/libxml
Pakiety pomijamy, gdyż robienie wszystkiego za czytelnika automatycznie praktycznie niczego go nie uczy o tym, jak PHP działa w sensie oferowanych możliwości, a ponadto istnieje poważne niebezpieczeństwo, iż pakiety będą albo przestarzałe lub nie posiadają wymaganych w podręczniku rozszerzeń.
PHP musi pracować z ustawieniami:
- Register_globals=Off
- Register_long_arrays=Off
- Magic_quotes_gpc=Off
- Magic_quotes_runtime=Off
- Error_reporting=E_ALL | E_STRICT
MySQL
edytujW chwili obecnej jest to wersja 5.0.18. Po ukazaniu się kilku stabilnych wydań serii 5.1, konwersja właśnie do niej. Także preferowana instalacja z kodu źródłowego tak, aby serwer DB oferował możliwość pracy (dokładny opis tuningu to temat na inny podręcznik).
Windows
edytujPreferowanym systemem z tej serii jest Windows XP. Wszystko instalujemy z pakietów binarnych dostarczanych przez producentów. Można krótko wspomnieć o zestawach WAMP. Podręcznik zakłada instalowanie wszystkich części składowych pakietu w następującej strukturze katalogowej:
- D:/Serwer/ - główny katalog
- D:/Serwer/Apache2/ - katalog serwera
- D:/Serwer/php5/ - katalog z PHP
- D:/Serwer/Mysql5/ - katalog z MySQL
- D:/Serwer/www/ - katalog na skrypty użytkownika (z zastosowaniem kont - dyrektywa UserDir).
Apache
edytujWymagania odnośnie wersji identyczne, jak w przypadku Linuksa. Serwer musi dawać dostęp z przeglądarki do katalogu D:/Serwer/Apache2/htdocs/ (narzędzia w stylu phpMyAdmin) oraz D:/Serwer/www/ dla skryptów czytelnika (obsługa kont - dyrektywa UserDir).
PHP
edytujWersja identyczna, jak w przypadku systemu Linux. Instalujemy analogiczne moduły: PDO, MySQL, Mysqli, GD, Zlib. Ustawienia pozostałych dyrektyw także bez zmian.
MySQL
edytujJw.
Mac
edytujŻaden z modułów dla systemu Mac nie jest jeszcze rozpoczęty. Jeżeli pragniesz to zrobić, ustal konwencję i działaj!