/ apache

Apache 2 + PHP 4/5 + Mysql

Wstęp.

Opiszę teraz jak zainstalować i skonfigorwać Apache 2 + PHP 4/5 + Mysql. Nie będę się zagłębiał we wszystkie opcje. Opiszę tylko tak, żeby działało. Zaczynamy.

Skąd pobrać?

Na początku ściągamy najnowsze apache z apache.org i php z php.net. Rozpakowywujemy Apache.

Kompilacja apache.

I zabieramy się za kompilację. Po wydaniu komendy ./configure --help można zobaczyć jakie są dostępne opcje. Aby apache działało z php wystarczy dodać jedną opcję --enable-so, dzięki czemu można będzie później załadować moduł php.

./configure --enable-so

Teraz wystarczy wydać komendy

make && make install

aby skompilować i zainstalować apache.

Kompilacja php.

Teraz zabieramy się za php, rozpakowywujemy i konfigurujemy z opcjami takimi jak się chce (./configure --help). Poniżej podam z jakimi ja kompilowałem.

./configure --with-apxs2=/usr/local/apache/bin/apxs --with-mysql

Opcja --with-apxs2 wskazuje gdzie jest zainstalowany skrypt apxs, a --with-mysql dodaje obsługę mysql, a zresztą co ja będę pisał, zajrzyjcie do dokumentacji ;-) Teraz

make && make install

I mamy już zainstalowane. Teraz zabieramy się za małą konfigurację. Dla php4 będąc jeszcze w katalogu z php wydajemy komendę:

cp -p .libs/libphp4.so /usr/local/apache2/modules

co jak widać skopiuje libphp4.so w odpowiednie miejsce. Następnie:

cp -p php.ini-dist /usr/local/lib/php.ini

co skopiuje nam php.ini. Teraz edytujemy plik /usr/local/apache2/conf/httpd.conf.

# Wpisujemy linię, którą podaję poniżej:
# dla php4:
LoadModule php4_module        modules/libphp4.so
# dla php5:
LoadModule php5_module        modules/libphp5.so

# Dodajemy index.php do DirectoryIndex jeżeli go tam nie ma
DirectoryIndex index.html index.php

# Dodajemy:
AddType text/html       php

# Jeżeli nie ma to dodajemy też:
AddType application/x-httpd-php .php .phtml

# Można także dodać (PHP Syntax Coloring):
AddType application/x-httpd-php-source phps

Uruchamiamy serwer.

Ok, wszystko powinno już działać dobrze. Można uruchomić apache komendą

/usr/local/apache/bin/apachectl start

Stronę można umieścić w /usr/local/apache/htdocs/ lub utworzyć w katalogu
domowym usera katalog public_html i wtedy strona będzie podadresem np.
http://localhost/~user/. No i to na tyle...

Mysql.

Co do mysql to nie trzeba żadnych ustawień w php ani apache. Instalujemy i to wszystko. No oczywiście mała konfiguracja. Edytujemy sobie plik /etc/mysql/my.cnf i w linijce language zmieniamy sobie na polish, czyli:

language        = /usr/share/mysql/polish

Wydajemy komendę:

/usr/bin/mysql_install_db

Teraz uruchamiamy mysql:

/etc/init.d/mysql start

i ustawiamy hasło dla roota:

/usr/bin/mysqladmin -u root -h hostname password 'haslo'
/usr/bin/mysqladmin -u root password 'root'

gdzie zamiast hostname w pierwszej linijce wstawiamy własne hostname. I to wszystko aby mysql działało. Dalsza konfiguracja poprzez mysql* ;-) Polecam także mysql-administrator, jest to mały program do konfiguracji msyql w wersji graficznej ;-) Można go znaleźć na mysql.com. Przydatnym narzędziem jest też phpmyadmin. Co do mysqladministrator to wystarczy tylko uruchomić i się zalogować, a phpmyadmin wrzucamy do katalogu gdzie uruchamiają się strony, edytujemy plik config.inc.php, konfigurujemy i można się już połączyć z phpMyAdmin.

Zakończenie.

To na tyle, wystarczy aby testować strony na swoim komputerze. Oczywiście dla serwera proponuję poczytać i bardziej skonfigurować wszystko pod względem funkcjonalności i bezpieczeństwa.