CentOs: instalacja Apache, PHP i MySQL

Autor: Arkadiusz Tobiasz 3 stycznia 2011

W tym wpisie postaram się pokazać Wam w jaki sposób możecie zainstalować serwer Apache wraz z obsługą PHP i MySQL na maszynie, na której zainstalowany jest CentOs.

Na wstępie mała uwaga. Na potrzeby tego wpisu jako hostname będę używał server.domena.pl a jako adres IP maszyny 192.168.1.0. Te ustawienia mogą być inne w Twoim przypadku, dlatego też podmień je na swoje.

Na wstępie zaktualizuj paczki dostępne w Twoim repozytorium wykonując komendę.

1
yum update

1. Instalacja MySQL 5

W celu zainstalowania MySQL wywołujemy komendę

1
yum install mysql mysql-server

Teraz dodajemy do konfiguracji systemu linkowanie do MySQL tak, aby podczas bootowania systemu serwer MySQL ładował się automatycznie:

1
chkconfig --levels 235 mysqld on

i uruchamiamy usługę komendą:

1
/etc/init.d/mysqld start

Teraz musimy ustawić dostęp do MySQL dla root (w przypadku braku ustawienia każdy będzie się mógł dostać do bazy danych MySQL!):

1
2
mysqladmin -u root password twojehasło
mysqladmin -h server.domena.pl -u root password twojehasło

2. Instalacja Apache

Apache jest dostępny w paczkach CentOsa i możemy go zainstalować wywołując komendę:

1
yum install httpd

Znów modyfikujemy konfigurację tak, aby serwer uruchamiał się automatycznie podczas bootowania systemu:

1
chkconfig --levels 235 httpd on

i uruchamiamy usługę:

1
/etc/init.d/httpd start

Po wpisaniu adresu 192.168.0.1 naszym oczom powinna ukazać się testowa strona Apache’a:

Domyślna ścieżka dla DocumentRoot w przypadku Apache’a postawionego na systemie CentOs to /var/www/htm, jego konfiguracja znajduje się tu: /etc/httpd/conf/httpd.conf, a dodatkowe pliki konfiguracyjne tu: /etc/httpd/conf.d/.

3. Instalacja PHP

PHP instalujemy wywołując komendę:

1
yum install php

Po zainstalowaniu musimy zrestartować Apache’a, aby zobaczyć zmiany:

1
/etc/init.d/httpd restart

Jak już wspomniałem DocumentRoot to /var/www/html, dlatego w tym katalogu umieścimy skrypt o nazwie info.php:

1
vi /var/www/html/info.php

Zawartość tego pliku to:

1
2
3
<?php
phpinfo();
?>

Po wywołaniu w oknie przeglądarki tego pliku (http://192.168.1.0/info.php) powinieneś zobaczyć informacje na temat wersji PHP:

Nie widać tam sekcji poświęconej MySQL, więc nie zainstalowaliśmy obsługi MySQL dla PHP.

5. Instalacja obsługi MySQL dla PHP

W tym celu powinniśmy zainstalować paczkę o nazwie php-mysql, jednak dobrze zainstalować również inne moduły dla php, więc wywołujemy komendę:

1
yum install php-mysql php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc

i restartujemy Apache’a, aby zobaczyć zmiany:

1
/etc/init.d/httpd restart

Odświeżamy nasz skrypt info.php w przeglądarce i sprawdzamy czy PHP wspiera już MySQL:

6. Instalacja phpMyAdmina

Pozostaje jeszcze kwestia zainstalowania skryptu phpMyAdmin w celu łatwiejszego zarządzania bazami danych MySQL.

W oficjalnym repozytorium CentOsa nie jest dostępna paczka z phpMyAdminem, dlatego też musimy odblokować repozytorium RPMforge:

– dla systemów x86_64 wywołujemy:

1
2
wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.3.6-1.el5.rf.x86_64.rpm
rpm -Uvh rpmforge-release-0.3.6-1.el5.rf.x86_64.rpm

– dla systemów i386 wywołujemy:

1
2
wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.3.6-1.el5.rf.i386.rpm
rpm -Uvh rpmforge-release-0.3.6-1.el5.rf.i386.rpm

Teraz instalujemy phpMyAdmina:

1
yum install phpmyadmin

Teraz musimy go skonfigurować Apache tak, aby można było się do niego dostać z innego IP niż 127.0.0.1. W tym celu w pliku:

1
vi /etc/httpd/conf.d/phpmyadmin.conf

komentujemy wszystko między a :

1
2
3
4
5
6
7
8
9
10
11
#
#  Web application to manage MySQL
#
#<Directory "/usr/share/phpmyadmin">
#  Order Deny,Allow
#  Deny from all
#  Allow from 127.0.0.1
#</Directory>
Alias /phpmyadmin /usr/share/phpmyadmin
Alias /phpMyAdmin /usr/share/phpmyadmin
Alias /mysqladmin /usr/share/phpmyadmin

Pozostaje jeszcze konfiguracja samego skryptu:

1
vi /usr/share/phpmyadmin/config.inc.php

gdzie cookie zamieniamy na http

1
2
/* Authentication type */
$cfg['Servers'][$i]['auth_type'] = 'http';

i na końcu restartujemy Apache:

1
/etc/init.d/httpd restart

Teraz możemy zalogować się do phpMyAdmina używając wcześniej ustawionego hasła dla roota wpisując adres http://192.168.1.0/phpmyadmin/

komentarze 2

  1. […] skrypt info.php, który stworzyliśmy podczas instalacji środowiska (link do wpisu) i na ekranie wyświetla mi się informacja o aktualnej wersji PHP zainstalowanej na serwerze. W […]

  2. […] do działania wymaga zainstalowanego na serwerze Apache’a. Jeżeli go jeszcze nie masz, to tutaj możesz dowiedzieć się jak go […]

Odpowiedz

 

Arkadiusz Tobiasz student Akademii Ekonomicznej im. Karola Adamieckiego w Katowicach na specjalnościach informatyka ekonomiczna oraz rachunkowość. Więcej...

jQuery Validation i funkcja remote

Jakiś czas temu zwrócił się do mnie użytkownik z problemem. Chodzi o to, że korzysta on z pluginu walidacji jQuery, […]

Zend Framework: integracja z Uploadify

W tym wpisie postaram się przedstawić Wam w jaki sposób zintegrować skrypt Uploadify z Zend Frameworkiem. Dzięki temu będziemy mogli […]

Javascript: Czasowe wyświetlanie reklamy

Czasami chcemy, aby na pewnym elemencie naszej strony wyświetlała się reklama przez jakiś czas, a następnie zniknęła. W tym wpisie […]

Linux: backup wszystkich baz danych MySQL

Swego czasu pisałem o tym jak z poziomu konsoli można szybko i przyjemnie zrobić backup bazy MySQL. Wszystko jest ładnie […]