Invata din acest tutorial gratuit cum sa instalezi din pachete sursa un server web Apache 2.x.xx cu suport pentru PHP 5.x.x si un server Mysql 5.x.xx in Linux.
Toate cele trei pachete sunt open-source si pot fi folosite gratuit.
La timpul scrierii acestui tutorial s-au folosit urmatoarele
Sistem de operare: Fedora Core 10
Server web: Apache 2.2.11
Server baze de date: mysql-5.1.34
Interpretor: php-5.2.9
Inainte de toate:
su - root
yum install gcc gcc-c++
Stergerea pachetelor RPM
Verificam daca mai este instalat vreun pachet din cele trei si apoi sa le dezinstalam:
rpm -qa | grep -i apache
rpm -qa | grep -i httpd
rpm -qa | grep -i php
rpm -qa | grep -i mysql
Apoi executati comanda de jos pentru fiecare fisier gasit:
rpm -e nume_fisier
Daca aveti Mysql instalat si contine baze de date create de tine, acestea nu vor fi sterse, putand fi copiate in noua locatie Mysql.
Luati sursele pachetelor
Pagina Download PHP
Ar fi indicat sa puneti toate fisierele descarcate in /usr/local/src pentru o organizare cat mai buna.
Dezarhivarea fisierelor
cd /usr/local/usr
tar -xzvf php-5.2.9.tar.gz
tar -xzvf httpd-2.2.11.tar.gz
tar -xzvf mysql-5.1.34.tar.gz
Compilare si instalare Mysql 5
Pentru securitate vom crea un utilizator pentru rularea Mysql:
$ groupadd mysql
$ useradd -g mysql mysql
Compilarea si instalarea:
cd /usr/local/src/mysql-5.1.34
./configure –prefix=/usr/local/mysql –with-charset=utf8 –with-collation=utf8_general_ci [*adaugati alte optiuni aici ]
make
make install
*Alte optiuni sunt disponibile cu comanda ./configure –help
Configurare Mysql
Pentru a finaliza instalarea trebuie sa cream un fisier de configurare. Acesta nu trebuie scris de la zero deoarece exista 4 fisiere predefinite; noi vom opta pentru configuratia medie.
cp support-files/my-medium.cnf /etc/my.cnf
chown root /etc/my.cnf
chgrp root /etc/my.cnf
chmod 644 /etc/my.cnf
Mai sus ne-am asigurat ca fisierul de configurare este detinut de userul si grupul “root” si ca are drepturile de acces necesare.
Editarea fisierului de configurare si adaugarea userului mysql
$ vi /etc/my.cnf
Cautati clauza [mysqld] si introduceti sub ea:
user = mysql
Pentru a functiona corect MYSQL are nevoi de o baza de date numita “mysql”. Pentru crearea ei executati:
/usr/local/mysql/bin/mysql_install_db –user=mysql
Daca apare o eroare de genul:
090519 3:12:32 [ERROR] /usr/local/mysql/libexec/mysqld: unknown option ‘–skip-federated’
090519 3:12:32 [ERROR] Aborting
Editati fisierul /etc/my.cnf si adaugati un “#” inaintea “skip-federated”
chown -R root .
chown -R mysql lib
chgrp -R mysql .
Pornire server si verificare
/usr/local/mysql/bin/mysqld_safe –user=mysql &
Acum ar trebuie sa ruleze serverul MYSQL.Apasati inca o data tasta ENTER pentru a reveni la prompt
Verificati daca functioneaza serverul.
/usr/local/mysql/bin/mysqladmin version
Daca acesta functioneaza ar trebui sa afiseze informatii despre versiunea programului
Conectarea la server:
/usr/local/mysql/bin/mysql -u root
Daca apare un mesaj de intampinare si apare promptul mysql> inseamna ca v-ati conectat cu succes
Creare script de activare al serverului MYSQL o data cu pornirea sistemului
cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld
chmod +x /etc/rc.d/init.d/mysqld
/sbin/chkconfig –level 3 mysqld on
Creare legaturi simbolice catre binarele mysql pentru a putea fi executate de oriunde fara a include calea catre ele.
cd /usr/local/mysql/bin
for file in *; do ln -s /usr/local/mysql/bin/$file /usr/bin/$file; done
Pentru pornirea sau oprirea manuala a serverului utilizati comenzile
/etc/rc.d/init.d/mysqld start
/etc/rc.d/init.d/mysqld stop
#sau
service mysqld start
service mysqld stop
Creare parola pentru userul root(nu este acelasi cu cel al sistemului)
mysqladmin -u root password parola-noua
Testare MYSQL
mysql -u root -p
Introduceti parola aleasa mai sus
Pentru securitate executati comenzile:
drop database test;
use mysql;
delete from db;
delete from user where not (host=”localhost” and user=”root”);
flush privileges;
Instalare Apache2
groupadd www
useradd -g www apache2
cd /usr/local/src/httpd-2.2.11
./configure –prefix=/usr/local/apache2
make
make install
Puteti compila serverul cu diferite optiuni. Cele alese de de mine sunt cele de mai jos; puteti vedea optiunile disponibile cu:
./configure –help
./configure --prefix=/usr/local/apache2 --enable-mime-magic \
--enable-headers --enable-ssl --enable-info --enable-dir \
--enable-rewrite --enable-so
make && make install
Pentru optiunea –enable-ssl aveti nevoie de pachetele openssl si openssl-devel
Daca totul a decurs fara erori, instalarea serverului Apache s-a incheiat.
Configurarea serverului Apache o vom face dupa instalarea PHP
Compilare si instalare PHP
Exista o multitudine de optiuni cu care puteti compila PHP. La fel ca si mai sus, le puteti vedea cu “./configure –help”
cd /usr/local/src/php-5.2.9
‘./configure’ ‘–prefix=/usr/local/php’ ‘–with-apxs2=/usr/local/apache2/bin/apxs’ ‘–with-mysql=/usr/local/mysql’ ‘–with-zlib’ ‘–with-jpeg-dir’ ‘–with-png-dir’ ‘–with-pdflib’ ‘–enable-zip’ ‘–enable-sockets’
make && make install
Copiati fisierul de configurare pentru PHP in locatia necesara si cream o scurtatura in /etc pentru o accesare mai usoara
cp php.ini-dist /usr/local/php/lib/php.ini
ln -s /usr/local/php/lib/php.ini /etc/php.ini
Configurare Apache
Copiati fisierul httpd.conf in /etc pentru a avea toate fisierele de configurare intr-un singur loc
ln -s /usr/local/apache2/conf/httpd.conf /etc/httpd.conf
Editare fisier httpd.conf
vi /etc/httpd.conf
Cautati DirectoryIndex si adaugati index.php
DirectoryIndex index.php index.htm index.html index.html.var
Cautati linia AddHandler type-map var si adaugati sub ea
AddHandler type-map var
AddHandler php5-script php
AddType application/x-httpd-php .php
Salvati fisierul si porniti serverul web
/usr/local/apache2/bin/apachectl start
Daca apare o eroare in legatura cu modulul php, de genul
/usr/local/apache2/conf/httpd.conf: Cannot load /usr/local/apache2/modules/libphp5.so ,
tastati comanda
/usr/sbin/setenforce 0
Creati un fiser, pentru testarea instalarii programelor, numit test.php in /usr/local/apache2/htdocs care sa contina cele de mai jos
Tastati in browser http://localhost/test.php si daca vedeti o pagina cu informatii despre PHP inseamna ca ati instalat totul corect.
Pornire automata Apache
ln -s /usr/local/apache2/bin/apachectl /etc/rc.d/init.d/httpd
chkconfig –level 2345 httpd on
Pentru eroarea service-httpd-does-not-support-chkconfig urmati linkul.
Asta a fost tot. Urmeaza ca fiecare ca modifice configuratiile aplicatiilor dupa propriile nevoi. Sper ca v-am fost de ajutor.
Vezi si alte tutoriale
[ad name=”v1″]
Install apache on Ubuntu :
sudo apt-get install apache2
Install PHP si PHP lib for apache 2 in Ubuntu
[code]
sudo apt-get install php5
sudo apt-get install libapache2-mod-php5
sudo /etc/init.d/apache2 restart
[/code]
Install MySQL server in Ubuntu :
[code]
sudo apt-get install mysql-server
[/code]
Daca rulezi php vei fi nevoit sa intalezi modulul php pt mysql5 :
[code]
sudo apt-get install php5-mysql
[/code]
Creeaza user MySQL :
[code]
mysql_install_db
mysqladmin -u root password YOURPASS
[/code]
Creaza Baza De Date Noua:
[code]
mysql -u root -p
Password: YOUR PASS
mysql>create database DBNAME;
mysql>\q
[/code]
Importa Baza de date :
[code]
mysql torrentflux < mysqlfile.sql -u root -p
Password: YOUR PASS
[/code]
Sper sa fi fost de folos…