Artykuł pobrano ze strony
eioba.pl
Instalacja i konfiguracja Apache 2.2 z PHP 5.x pod Windows XP
Instalowanie
PHP
5 pod Apache 2.0 do bardzo trudnych nie należy. W związku z tym, iż moje biurko dopalał Indianin 2.0 z Tresowanym
Słoniem czwartej generacji, postanowiłem trochę odświeżyć paczki, bo chyba się trochę zastałem.
OK, pora na meritum. Najpierw musimy zaopatrzyć się w niezbędne paczki:
Apache
PHP 5.2
W przypadku Apache’a ściągamy najnowsze dostępne binarki dla Windows (plik .msi; na stronie dostępne jest stabilne
wydanie).
PHP
ściągamy w postaci paczki ZIP.
Zaloguj się jako administrator (no, można jeszcze na ograniczonym, ale nie jest to takie wygodne) i… instalujemy.
Zapraszamy Indianina do tipi
Zaczynamy od Apache’a. Po ściągnięciu pliku apache_2.2.x-win32-x86-no_ssl.msi (albo -ssl; w naszym przypadku będzie
to wersja bez
SSL
-a) uruchamiamy go dwuklikiem. Instruujemy instalatora najczęściej za pomocą przycisku next/install, z dwoma wyjątkami:
przy wpisywaniu danych serwera (w “domowych” warunkach wpisujesz cokolwiek) oraz… przy zakończeniu (przecież tam
next już nie ma ;P).
Podczas instalacji będziemy mieli możliwość zmiany katalogu, w którym zostaną umieszczone pliki serwera. Ustawmy
ścieżkę na np. C:\serwer\apache. Potem popychamy tylko instalatora przyciskiem next. “Mrugnie” parę okienek
(oznaczają one startowanie usługi serwera) i w międzyczasie firewall spyta (mam nadzieję, że masz :P), czy zezwolić na
nasłuchiwanie na porcie :80. Odpowiadamy twierdząco.
Otwieramy swoją ulubioną przeglądarkę (mam nadzieję, że jest to
Opera
;)) i wpisujemy 127.0.0.1. Powinna otworzyć nam
się strona informująca o poprawnej instalacji Indianina.
UWAGA: może się zdarzyć, iż firewall nie zapyta o zezwolenie na nasłuch i nie uda się otworzyć strony w przeglądarce.
Taka sytuacja występuje dosyć często przy włączonym Skype podczas instalacji. Wystarczy go wyłączyć i uruchomić
usługę poprzez komendę net start apache2 wpisaną w Start-Uruchom. Jeśli pomimo to strona nie chce się otworzyć,
może to oznaczać, że jakaś inna aplikacja blokuje port. Wówczas musisz sprawdzić ustawienia wszystkich aplikacji, które
mogą blokować port. Pomocne może się przydać polecenie netstat -ab.
…sprowadzamy Słonia
Zakładam, że wszystko jest w porządku. Zatrzymujemy Apache za pomocą polecenia net stop apache2. Pora teraz
rozpakować pliki z
PHP
. Utwórz sobie folder C:\serwer\php i rozpakuj tam ZIP-a. Do C:\Windows\system32\ skopiuj następujące pliki:
php5ts.dll
ntwdblib.dll (jeśli chcesz korzystać z
MS
SQL
; w przypadku wersji 2005 Express musisz skopiować
nowszą wersję
)
Następnie zmień nazwę pliku php.ini-recommended na php.ini.
Tresujemy Słonia
Teoretycznie moglibyśmy już przystąpić do podpięcia
PHP
w Apache’u jednak wcześniej zatrzymam się na konfiguracji Słonika. W tym celu dwuklikiem edytujemy plik php.ini, o
którym już wspomniałem
Plik jest dosyć dobrze opisany, więc osoby obeznane z technicznym angielskim nie będą miały problemów z jego edycją.
Dla pozostałych omówię najważniejsze, moim zdaniem, sekcje:
display_errors = Off
Dyrektywa ta odpowiada za wyświetlanie błędów przy parsowaniu skryptów. Domyślnie jest ustawiona na ukrywanie
(ze względów bezpieczeństwa), ale uniemożliwi nam poprawianie błędów. Zapewne będziesz tworzyć własne
skrypty, więc utrudni to tylko pracę. Zmień Off na On.
;error_log = filename
Opcja ta umożliwia zapisywanie wszystkich komunikatów o błędach do pliku. Wbrew pozorom, naprawdę ułatwia
życie, ponieważ w niektórych wypadkach w ogóle nie zobaczymy błędów (np. podczas przekierowań). Usuń średnik
na początku linijki i zamień filename na ścieżkę do pliku, w którym mają być zapisywane “buraki” (np. “C:/serwer
/bledy.php.log”)
extension_dir = “./”
Ważne, o ile najważniejsze ustawienie. Definiuje ono, w którym katalogu znajdują się rozszerzenia. Zazwyczaj
domyślna ścieżka nie będzie zgadzała się z tym, co mamy na dysku, więc zmień ją na “C:/serwer/php/ext/”
;extension=php_mbstring.dll…
Wpisy te określają, które rozszerzenia są włączone. Domyślnie, wszystkie są wyłączone. Nie ma sensu włączania
wszystkich, ponieważ są one ładowane przy startowaniu kompa. Włączymy tylko kilka z nich: php_mbstring,
php_bz2, php_gd2, php_imap (jeśli chcesz obsługiwać odbieranie poczty e-mail w swoich skryptach), php_mysql
(jeśli będziesz korzystać z
MySQL
; wymagane jest również zainstalowanie samej bazy). Każde rozszerzenie
aktywujesz poprzez usunięcie średnika na początku linijki.
Zapisz zmiany w pliku.
Sprowadzamy Słonia do tipi
Możemy to zrobić na dwa sposoby: w trybie ISAPI bądź
CGI
. Upraszczając, ISAPI oznacza załadowanie
PHP
jako wątek Apache’a. W trybie
CGI
PHP
działa jako osobna aplikacja. Ma to znaczenie dla bezpieczeństwa, które w przypadku
CGI
jest większe (proces nie zawiesi całego serwera). Natomiast, w przypadku ISAPI generowanie stron jest dużo szybsze. W
zastosowaniach “domowych” polecam użycie trybu ISAPI. Opiszę oba:
ISAPI
Najpierw skopiuj plik php5apache2_2.dll z katalogu
PHP
do folderu bin Apache’a. Wejdź do katalogu conf i zapomocą notatnika otwórz plik httpd.conf
Musimy teraz nakazać Apache’owi przetwarzanie plików z rozszerzeniem .php przez odpowiedni moduł. W celu
zachowania porządku, znajdź sekcję zaczynającą się od:
#
1.
# Dynamic Shared Object (DSO) Support
2.
#
3.
i na jej końcu dopisz:
LoadModule php5_module "bin/php5apache2_2.dll"
1.
AddType application/x-httpd-php .php
2.
CGI
Wpisz w tym samym miejscu, co dla ISAPI linijki:
ScriptAlias /php/ "c:/serwer/php/"
1.
AddType application/x-httpd-php .php
2.
Action application/x-httpd-php "/php/php-cgi.exe"
3.
Następnie znajdź linię:
Options Indexes FollowSymLinks
1.
i dopisz na jej końcu ExecCGI
Options Indexes FollowSymLinks ExecCGI
1.
Zmieniamy toporek
Właściwie, to by było na tyle - można by było już wystartować Apache’a, ale domyślne opcje są trochę “niewygodne”.
Mając otwarty plik httpd.conf szukamy:
Listen 80, ServerName <nazwa>:80
Tym ustawiamy port, na którym Apache ma oczekiwać na połączenia. Jeśli coś nam nie pasuje, to zmieniamy 80 na
inną liczbę. W większości wypadków nie będzie to jednak potrzebne.
#LoadModule rewrite_module modules/mod_rewrite.so
Od tego wpisu zależy, czy będziemy mogli skorzystać z tzw. “Przyjaznych
na stronie projektu Apache
i po polsku
na
home.pl
. Usuń # rozpoczynający linijkę.
URL
-i”, np. http://serwer/strona/dzial-86. To temat na osobny wpis, więcej
DocumentRoot “C:/serwer/apache/htdocs”
Tutaj ustawiamy, w którym katalogu mają znajdować się tworzone przez nas strony.
IMHO
, lokalizacja niewygodna, więc zmieniamy, np. C:/serwer/strony.
DirectoryIndex index.html
Dyrektywa określa, które pliki mogą być stronami głównymi. Domyślna wartość uniemożliwi nam otwieranie stron
napisanych w
PHP
bez wklepywania index.php na pasku adresu. Proponuję ustawić: DirectoryIndex index.html index.htm default.html
default.htm index.php
Zapisz zmiany i umieść pliki swojej strony w odpowiednim folderze (w naszym przypadku, C:\serwer\strony). Na koniec
budzimy Indianina (net start apache2) i odwiedzamy
127.0.0.1
.
PS
. Razem z Apache dostajemy program służący do monitorowania stanu serwera. Za jego pomocą możemy
wystartować/zatrzymać/zrestartować usługę poprzez “wyklikanie”. Cały czas rezyduje obok zegarka w postaci ikonki
Apache.
Przełożyłem na chłopski rozum z
manuala
i dodałem coś od siebie.
Autor: Przemysław "eRiZ" Pawliczuk
Przedruk ze strony:
http://eriz.pc-inside.org/weblog/instalacja-i-konfiguracja-apache-22-z-php-5x-pod-windows-xp-87.html
Artykuł pobrano ze strony
eioba.pl