Compilarea propriei stive LAMP vă permite să utilizați cele mai recente versiuni de Apache, MySQL și PHP. Utilizând managerul de pachete CentOS 6, primiți Apache 2.2, MySQL 5.1 și PHP 5.3. Managerul de pachete instalează doar actualizări de securitate de la echipa CentOS.
Ca administrator de sistem, știți că actualizarea software-ului este esențială. Și cu serverul dvs. web orientat către internet, trebuie să vă asigurați că software-ul serverului web este actualizat pentru a preveni vulnerabilitățile.
Acest articol vă învață cum să vă compilați propriile stive LAMP. Fiecare dintre comenzi va fi explicată folosind următorul format.
# Commands will be listed here
O explicație a comenzilor va fi declarată aici.
Pasul 1: Descărcarea / instalarea Apache 2.4
Pentru acest articol, vom folosi o oglindă prestabilită; dar dacă doriți, puteți utiliza o altă oglindă din pagina oglindă Apache cu un apel de la VPS.
curl -q -s apache.org/dyn/closer.cgi > /tmp/closer
sed -e 151b -e '$!d' /tmp/closer
Comanda curl trimite o solicitare HTTP la adresa URL și își recuperează conținutul. Redirecționăm ieșirea către /tmp/closer, iar apoi comanda sed o reduce la ceva pe care îl puteți citi.
Veți vedea un link oglindă conținut în href=""secțiune. Înlocuiți doar legăturile specificate în acest articol cu acea oglindă.
Descărcați sursa în Apache 2.4.
cd /usr/src && wget http://apache.mirrors.ionfish.org/httpd/httpd-2.4.17.tar.gz && tar xvf httpd-2.4.17.tar.gz
Prima parte a acestei comenzi va schimba directorul nostru actual în /usr/src, apoi secțiunea wget va descărca sursa. Ultima parte a acestei comenzi dezarhivează sursa.
Deoarece Apache necesită APR și APR-utilize, faceți următoarele:
wget http://apache.mirrors.ionfish.org/apr/apr-1.5.2.tar.gz && tar xvf apr-1.5.2.tar.gz && mv apr-1.5.2 httpd-2.4.17/srclib/apr
wget http://apache.mirrors.ionfish.org/apr/apr-util-1.5.4.tar.gz && tar xvf apr-util-1.5.4.tar.gz && mv apr-util-1.5.4 httpd-2.4.17/srclib/apr-util
Aceste comenzi vor descărca sursele pentru APR și APR-util și le dezarhivați. Apoi, mutăm sursa în directorul de construire al lui Apache, astfel încât Apache să se construiască corect.
Deoarece avem nevoie de un compilator C adecvat, va trebui să instalăm unul folosind managerul de pachete.
yum groupinstall 'Development Tools' -y
yum install gcc-c++ -y
yum install pcre-devel -y
yum install bison bison-devel -y
yum install ncurses-devel -y
yum install perl-devel -y
Așa cum am menționat mai sus, trebuie să obținem în continuare cerințele preliminare ale lui Apache, așa că le vom instala folosind managerul de pachete.
Buna treaba! Acum, este timpul să configurați și să construiți Apache.
cd httpd-2.4.17 && ./configure
cd httpd-2.4.17Partea schimbă directorul nostru curent de lucru httpd-2.4.17/. Când rulăm ./configure, ne configurăm sistemul pentru a construi Apache.
Permiteți sistemului să configureze sursa pentru instalare, nu ar trebui să dureze prea mult. Odată finalizat, executați:
make && make install
cp support/apachectl /usr/sbin
chmod 755 /usr/sbin/apachectl
Secțiunea Marcă a acestor comenzi va construi software-ul. Când rulăm make install, instalăm eficient Apache în sistemul nostru. Acum, trebuie să-l copiem în directorul securizat (cp semnifică copiere). În cele din urmă, îi vom da permisiuni de executat cu chmod 755.
Felicitări, ați instalat cu succes Apache 2.4!
Pasul 2: Descărcarea / instalarea MySQL
Acum, haideți să instalăm MySQL, o bază de date folosită de multe aplicații web. Deoarece MySQL oferă deja cea mai recentă versiune sub forma unui RPM, este mai ușor să utilizați fișierul de instalare pre-construit apoi să îl configurați. Vom folosi depozitul oficial MySQL.
cd /usr/src && wget http://dev.mysql.com/get/mysql57-community-release-el6-7.noarch.rpm && rpm -i mysql57-community-release-el6-7.noarch.rpm
yum install mysql-community-server -y
Prima comandă este de unde descărcăm fișierul RPM pentru a activa depozitul MySQL de pe sistemul nostru. Apoi, rpm -iinstalează fișierul RPM. În cele din urmă, vom instala MySQL din depozitul oficial MySQL.
Pasul 3: Descărcarea / instalarea PHP
PHP are unele dependențe pe care trebuie să le instalăm, deci să trecem la asta.
yum install -y libxml2-devel libcurl-devel libmcrypt libmcrypt-devel
Folosim din nou managerul de pachete - dar de data aceasta, instalăm unele componente pentru a permite funcționării corecte a aplicațiilor PHP.
Descărcați sursa pentru PHP, care se realizează executând următoarele comenzi:
wget http://docs.php.net/distributions/php-5.6.15.tar.gz && tar xvf php-5.6.15.tar.gz
cd php-5.6.15
./configure --with-pear=/usr/lib/pear --enable-libxml --with-pdo-mysql --with-mysqli --with-mysql --enable-mbstring --with-mcrypt --with-apxs2=/usr/local/apache2/bin/apxs --enable-maintainer-zts --with-curl=/lib
make && make install
Prima parte wgeteste aceea de a descărca sursa în PHP 5.6.15. Apoi, ne schimbăm directorul de lucru în php-5.6.15. În cele din urmă, configuram PHP cu caracteristicile necesare pentru a rula diverse aplicații web, cum ar fi site-urile de comerț electronic.
Rețineți că, dacă primiți un mesaj care conține „/ path / to / perl”, va trebui să editați fișierul /usr/local/apache2/bin/apxs.
nano /usr/local/apache2/bin/apxs
Schimbați prima linie la:
#!/usr/bin/perl -w
Pasul 4: Pornirea / oprirea stivei LAMP
Deoarece am construit Apache de la zero, nu include un serviciu pre-construit. Va trebui să configuram singur scriptul init.
cd /usr/src && wget https://gist.githubusercontent.com/anonymous/62b0b788f86e7773e901/raw/6bcc88f9354f7139916272ac7a4eb998b1f26fdd/httpd-init
mv httpd-init /etc/init.d/httpd
chmod 755 /etc/init.d/httpd
Prima parte, în care noi cd, schimbăm directorul nostru de lucru în directorul în care construim / compilăm software. Apoi, cu &&, executăm și ceva după acesta, care, în acest caz, descarcă fișierul de serviciu pentru Apache. În cele din urmă, acordăm permisiunea ca acesta să fie executat cu chmodcomanda.
Gata si gata!
Acum, să începem Apache + MySQL + PHP:
service httpd start
service mysqld start
Cu comenzile de servicii, putem gestiona starea serviciilor. În acest caz, am început serviciile httpdși mysqld.
PHP este început cu Apache, nu începe prin intermediul unui serviciu.
Concluzie
În acest articol, am tratat modul în care puteți configura un stack LAMP de la zero folosind versiuni actualizate ale Apache / PHP / MySQL. Deși necesită mai multă administrare pentru a gestiona, această tehnică este utilă atunci când dorim o stivă mai nouă decât ceea ce oferă furnizorul de sisteme de operare.