Software

edytuj

Rozdział 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

edytuj

Najważ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

edytuj

Serwer 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

Wersja: 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

W 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

edytuj

Preferowanym 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

edytuj

Wymagania 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).

Wersja identyczna, jak w przypadku systemu Linux. Instalujemy analogiczne moduły: PDO, MySQL, Mysqli, GD, Zlib. Ustawienia pozostałych dyrektyw także bez zmian.

Jw.

Żaden z modułów dla systemu Mac nie jest jeszcze rozpoczęty. Jeżeli pragniesz to zrobić, ustal konwencję i działaj!