Saturday, 2024-05-18, 5:46 PM
Welcome Guest | RSS
Main | Instalare Apache, MySQL si PHP in Linux - Forum | Registration | Login
Login form
Search
Our poll
Cum e siteu?
Total of answers: 38
Site friends
  • Create your own site
  • Un site pentru tine
    [ New messages · Members · Forum rules · Search · RSS ]
    • Page 1 of 1
    • 1
    Forum » Tehnologie si Calculatoare » Linux » Instalare Apache, MySQL si PHP in Linux
    Instalare Apache, MySQL si PHP in Linux
    filme-gamesDate: Friday, 2009-02-06, 7:32 PM | Message # 1
    Admin
    Group: Administrators
    Messages: 114
    Reputation: 0
    Status: Offline
    Instalare Apache, MySQL si PHP in Linux
    Acest tutorial isi propune sa-i indrume, pe cei doritori de a avea un server web in Linux, in pasii instalarii celor trei pachete gratuite si open-source, apache, Mysql si php.

    In cazul de fata vom folosi:

    Sistem de operare: SuSE Linux 10.1
    Compilator: GCC 4.1.0
    Server web: Apache 2.2.2
    Server baze de date: MySQL 5.0.22
    Interpretor: PHP 5.1.4
    ~> reprezinta promptul consolei

    Procesele de instalare se realizeaza sub privilegii de root (su » Enter » *parola_de_root* » Enter)

    Instalare Apache 2.2.2
    Inainte de a incepe cu instalarea, e indicat (nu obligatoriu) sa cream un user si un grup sub care va rula Apache (astfel, fisierle create de Apache (eventual rezultatele executiilor scripturilor PHP) vor apartine acestui user, apache2 in cazul nostru, si afiliate acestui grup, www in cazul nostru):

    ~> groupadd www
    ~> useradd -g www apache2

    In continuare vom obtine sursele serverului: httpd-2.2.2.tar.gz (aproximativ 6 MB)

    Dupa ce am obtinut sursele, trecem la dezarhivarea lor in hardisk-ul local, deschizand o consola in directorul unde am salvat arhiva .tar.gz

    ~> tar -xzf httpd-2.2.2.tar.gz
    ~> cd httpd-2.2.2
    ~> ./configure --prefix=/usr/local/apache2 --enable-so

    In exemplul de mai sus, prima linie reprezinta dezarhivarea surselor, a doua linie reprezinta schimbarea directorului curent in cel in care s-a realizat dezarhivarea iar a treia linie reprezinta configurarea surselor: --prefix reprezinta destinatia unde se va instala (si va fi accesibil) serverul Apache iar --enable-so activeaza modulul Dynamic Shared Object, pentru a putea dISPune pe viitor de module cum ar fi de exemplu mod_rewrite. Comanda ./configure accepta si multi alti parametri pe care ii poti afla ruland-o cu optiunea --help (./configure --help).

    Odata terminata si aceasta etapa, sa trecem la instalarea efectiva a serverului Apache:

    ~> make
    ~> make install

    In acest moment, daca totul a decurs fara erori (cel putin asa ar trebui in conditii normale), instalarea serverului Apache s-a incheiat. Urmeaza configurarea lui si a sistemului.

    Prima modificare pe care o vom face este aceea a fisierului de configurare a serverului Apache, si anume httpd.conf

    ~> mcedit /usr/local/apache2/conf/httpd.conf

    sau pentru "sadici":

    ~> vi /usr/local/apache2/conf/httpd.conf

    Odata deschis fisierul, trebuie modificat astfel incat sa arate ca mai jos ("..." reprezinta linii ce trebuiesc ignorate):

    ServerRoot "/usr/local/apache2"
    ...
    <IfModule !mpm_winnt.c>
    <IfModule !mpm_netware.c>
    User userul_tau_de_linux
    Group www
    </IfModule>
    </IfModule>
    ...
    DocumentRoot "/calea/catre/fisierele/tale"
    ...
    <Directory "/calea/catre/fisierele/tale">
    Options FollowSymLinks
    AllowOverride None
    </Directory>
    ...
    DirectoryIndex index.php index.html index.htm index.html.var

    Modificarile de mai sus sunt minimale, dar suficiente pentru ce ne trebuie noua.

    Acum setam drepturi pentru directorul unde vor fi stocate fisierele site-urilor noastre:

    chmod -R 750 /calea/catre/fisierele/tale

    Acestea fiind zise, sa testam ce am facut pana acum, pornind, oprind sau restartand serverul:

    ~> /usr/local/apache2/bin/apachectl start

    ~> /usr/local/apache2/bin/apachectl stop

    ~> /usr/local/apache2/bin/apachectl restart

    In momentul de fata serverul Apache este configurat si ruleaza. Dar, de vreme ce vom reseta sistemul la un moment dat, sa facem modificarile necesare pentru ca acesta sa porneasca odata cu sistemul:

    ~> cp /usr/local/apache2/bin/apachectl /etc/init.d
    ~> chmod 755 /etc/init.d/apachectl
    ~> chkconfig --add apachectl
    ~> chkconfig --level 35 apachectl on

    Acestea fiind zise, am terminat cu Apache-ul

    Instalare MySQL 5.0.22
    Inainte de toate trebuie sa ne asiguram ca userul "mysql" exista in sistem, daca nu cream unul (sub care serverul de MySQL va functiona):

    ~> groupadd mysql
    ~> useradd -g mysql mysql

    Mai departe, obtinem sursele serverului: FTP://ftp.roedu.net/pub/mirrors/ftp.mysq....22.tar.gz " class="link" title="MySQL 5.0.22">mysql-5.0.22.tar.gz (aproximativ 18,6 MB)

    In continuare, urmeaza dezarhivarea surselor, configurarea pentru instalare si, in sfarsit, instalarea:

    ~> tar -xzf mysql-5.0.22.tar.gz
    ~> cd mysql-5.0.22
    ~> ./configure --prefix=/usr/local/mysql-5.0.22 --with-charset=utf8 --with-collation=utf8_general_ci
    ~> make
    ~> make installc

    Mai sus, am folosit --with-charset=utf8 si --with-collation=utf8_general_ci pentru a evita instalarea cu Swedish implicit.

    Acum cream un link catre directorul in care s-a instalat MySQL-ul, pentru a ne fi usor sa facem referire pe viitor catre el (la instalarea PHP-ului, de exemplu):

    ~> ln -s /usr/local/mysql-5.0.22/ /usr/local/mysql

    Urmeaza crearea fisierului my.cnf (fisierul de configurare al MySQL-ului). Acesta contine optiuni de control si securitate. Fisierul nu trebuie scris de la 0, existand patru variante gata facute in directorul support-files/ al kit-ului. Citeste-le pe rand si alege-l pe cel care crezi ca ti se potriveste cel mai bine. Eu am ales my-small.cnf pentru ca nu fac webhosting sau mai stiu eu ce... imi trebuie pentru un simplu localhost. Acum il copiem unde trebuie si ii dam drepturi de scriere etc:

    ~> cp support-files/my-small.cnf /etc/my.cnf
    ~> chown root /etc/my.cnf
    ~> chgrp root /etc/my.cnf
    ~> chmod 644 /etc/my.cnf

    Acum editam fisierul si specificam ca serverul va rula sub privilegiile userului mysql.

    ~> mcedit /etc/my.cnf

    sau pentru "sadici":

    ~> vi /etc/my.cnf

    cauta linia [mysqld] si imediat sub ea insereaza o noua linie in care scrii:

    user = mysql

    Locul pe HDD-uri unde stau bazele de date se poate alege cand se editeaza fisierul my.cnf specificand parametrul datadir. (@whooper)

    In continuare, pentru a functiona cum trebuie, MySQL are nevoie de o baza de date mysql . Pentru a o crea, ruleaza:

    ~> /usr/local/mysql/bin/mysql_install_db --user=mysql

    Se va crea un director /usr/local/mysql/var/ care va contine bazele de date necesare. Tot aici vor fi stocate si restul de baze de date care se vor crea de-a lungul timpului. Directorul trebuie sa poata fi scris de catre userul "mysql".

    Acum sa pornim serverul pentru prima data (daca acesta este un upgrade, de la o versiune mai veche ce deja exista instalata in sistem, nu uita s-o opresti pe aceasta din urma...):

    ~> /usr/local/mysql/bin/mysqld_safe --user=mysql &

    apasa Enter pentru e reveni la cursor/prompt. Acum severul MySQL ar trebui sa mearga. Pentru a verifica, in urma comenzii de mai jos, trebui sa primesti raspuns de la server cu niste informatii legate de el:

    ~> /usr/local/mysql/bin/mysqladmin version

    Conectarea la serverul MySQL se face cu comanda:

    ~> /usr/local/mysql/bin/mysql -u root

    Vei primi un mesaj de intampinare iar promptul se va schimba in mysql>

    Acum sa setam parola de root, inainte de orice alta operatiune:

    mysql> DELETE FROM mysql.user WHERE User = '';
    mysql> FLUSH PRIVILEGES;
    mysql> SELECT Host, User FROM mysql.user;

    va fi afisat un tabel cu doua coloane si doua randuri. Cauta randul ce contine root in coloana User si altceva in afara de localhost in coloana Host . Acel altceva este numele gazdei MySQL (host_name)

    mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('parola_noua');
    mysql> SET PASSWORD FOR 'root'@'acel_altceva' = PASSWORD('parola noua');

    Acesta este super-utilizatorul ce va avea drepturi peste toate bazele de date existente sau viitoare.

    Acum, ca am terminat si cu asta, sa

    mysql> quit;

    Urmatorul pas este reponirea serverului MySQL, modificarile necesare fiind realizate:

    ~> /usr/local/mysql/bin/mysqladmin -u root -p shutdown
    ~> /usr/local/mysql/bin/mysqld_safe --user=mysql &

    La fel ca la Apache, sa-l facem sa porneasca singur la start-up. In directorul unde sunt sursele dezarhivate ruleaza:

    ~> cp support-files/mysql.server /etc/init.d/mysql
    ~> chmod 755 /etc/init.d/mysql
    ~> chkconfig --add mysql
    ~> chkconfig --level 35 mysql on

    Am terminat si cu MySQL, ne-a mai ramas...

    Instalare PHP 5.1.4
    Vom instala PHP-ul ca modul pentru Apache, astfel fiind intializat la pornirea serverului.

    Obtinem sursele serverului: php-5.1.4.tar.gz (aproximativ 7,9 MB)

    Decomprimam si configuram:

    ~> tar -xzf php-5.1.4.tar.gz
    ~> cd php-5.1.4
    ~> ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql=/usr/local/mysql --enable-module=so --enable-bcmath --enable-calendar --with-curl --enable-exif --enable-ftp --with-gd --with-jpeg-dir=/usr/local --with-png-dir=/usr/local/png --with-gettext --with-pear --enable-sockets --with-ttf --with-freetype-dir=/usr/include/freetype --enable-gd-native-ttf --with-zip --with-zlib

    Primii doi parametri stabilesc caile de acces, iar al treilea specifica si compilarea cu suport pentru MySQL (de vreme ce incepand cu versiunea 5 nu mai este implicit). Pentru restul de parametri ai la dispozitie ./configure --help

    In continuare

    ~> make
    ~> make install

    Toate schimbarile necesare in httpd.conf (fisierul de configurare al lui Apache) ar trebui sa fie facute deja, dar, pentru orice eventualitate, verifica daca urmatorele linii se regasesc acolo (Daca nu exista, adauga-le manual. ):

    LoadModule php5_module modules/libphp5.so
    AddType application/x-httpd-php .php

    Urmeaza crearea fisierului php.ini , fisierul in care se configureaza modul in care ruleaza PHP. Alege din fisierele gata facute (in directorul in care se gaseste kit-ul) si copie-l in directorul /lib din directorul unde s-a instalat PHP:

    ~> cp php-5.1.4/php.ini-recommended /usr/local/php/lib/php.ini

    iar daca ai nevoie sa editezi fisierul php.ini:

    ~> mcedit /usr/local/php/lib/php.ini

    sau pentru "sadici":

    ~> vi /usr/local/php/lib/php.ini

    Ne-a mai ramas sa restartam serverul Apache

    ~> /usr/local/apache2/bin/apachectl restart

    Ca sa verifici daca totul e in regula, creeaza un fisier test.php

    PHP Code:
    <?php
    phpinfo();
    ?>

    si acceseaza in browser http://linux/test.php sau http://localhost/test.php sau http://127.0.0.1/test.php

    Asta este tot. Acum ai un server web la tine in calculator, functional in parametri.

     
    Forum » Tehnologie si Calculatoare » Linux » Instalare Apache, MySQL si PHP in Linux
    • Page 1 of 1
    • 1
    Search:

    Website builderuCozCopyright MyCorp © 2024