Instaliranje LAMP (Linux, Apache, MySQL, PHP i PhpMyAdmin) u Gentoo Linux


Maksimalne performanse postignute kompajliranjem softvera iz izvora sa Gentoo-om imaju minimalan uticaj, ako kao referencu uzmemo današnju obradu energije hardvera. Koja je onda svrha korištenja Gentooa kao platforme za web server, pitate se? Pa, najvažniji atribut koji Gentoo ima je njegova ekstremna fleksibilnost koju Portage može isporučiti na specifične zadatke i potpunu kontrolu koju krajnji korisnik može postići nad cijelim sistemom, zbog činjenice da je Gentoo kompajliran i graditi iz izvora i ne koristi prethodno upakovane binarne datoteke kao većina Linux distribucija.

Ovaj vodič pruža korak po korak proceduru instalacije za poznati stog LAMP (Linux, Apache, MySQL i PHP/PhpMyAdmin) koristeći minimalno Gentoo instalaciono okruženje.

Zahtjevi

  1. Minimalno Gentoo Linux okruženje instalirano kao u ovom vodiču (Instalirajte Gentoo Linux)

Korak 1: Konfigurišite statičku IP adresu

1. Prije nego što nastavimo sa instaliranjem LAMP steka, sistem mora biti konfigurisan sa statičkom IP adresom, što je “mora” u slučaju servera. Ali, prije nego počnemo konfigurirati mrežne statičke postavke, koristite naredbu ifconfig da prikažete imena kartica mrežnog sučelja.

ifconfig -a

Kao što možete vidjeti, naziv NIC-a može se razlikovati od drugih uobičajenih naziva koji se koriste u Linuxu, kao što su ethX, ensXX ili drugi, pa zabilježite ovo ime za daljnja podešavanja.

2. Ako ste ranije koristili DHCP server za svoju mrežu, provjerite jeste li porušili i onemogućili DHCP klijent na svom sistemu koristeći sljedeće komande (zamijenite IP adrese i uređaje svojim postavkama).

rc-update del dhcpcd default
/etc/init.d/dhcpcd stop
ifconfig eno16777736 down
ifconfig eno16777736 del 192.168.1.13 netmask 255.255.255.0
emerge –unmerge dhcpcd

3. Zatim kreirajte simboličku vezu sa mrežnog loopback uređaja sa imenom vašeg NIC povezanog interfejsa i kreirajte statičku konfiguracionu datoteku za ovaj uređaj u /etc/conf.d/ put.

ln -s /etc/init.d/net.lo  /etc/init.d/net.eno16777736
sudo nano /etc/conf.d/net.eno16777736

Uredite ovu datoteku uređaja sa sljedećim konfiguracijama.

config_eno16777736="192.168.1.25 netmask 255.255.255.0 brd 192.168.1.255"
routes_eno16777736="default via 192.168.1.1"
dns_servers_eno16777736="192.168.1.1 8.8.8.8"

4. Nakon što završite uređivanje statičkih konfiguracija NIC-a, pokrenite mrežni interfejs i provjerite mrežne postavke i vezu pomoću naredbi ifconfig i ping i ako je sve uspješno konfigurirano dodajte ga za pokretanje procesa.

/etc/init.d/net.eno16777736 start
ifconfig
ping -c2 domain.tld
rc-update add net.eno16777736 default

Ako želite da DNS serveri imena budu konfigurisani za cijeli sistem, uredite datoteku /etc/resolv.conf i dodajte string servera imena za svaku DNS IP adresu.

Korak 2: Instalirajte LAMP

5. Nakon što završite sa mrežnim postavkama, nastavite sa instaliranjem LAMP steka, ali ne prije nego što potvrdite Gentoo profile i ažurirate Portage stablo i sistem.

Za server okrenut Internetu sa sigurnosnim zakrpama vjerovatno ćete htjeti koristiti Hardened profil koji mijenja postavke paketa za cijeli sistem (maske, USE zastavice, itd.). Koristite sljedeće komande da biste naveli i promijenili svoj profil.

sudo eselect profile list
sudo eselect profile set 11

6. Nakon što je profil koji vam najviše odgovara, ažurirajte svoj sistem i Portage stablo.

sudo emerge --sync
sudo emerge --update @world

7. Sada je vrijeme da nastavite s instalacijom LAMP-a. Provjerite dokumentaciju Apache Web servera za USE zastavice koristeći emerge –pv komandni prekidač, a zatim uredite Portage make.conf datoteku sa potrebnim USE oznakama prije pokušaja instalirajte ga.

emerge -pv apache
nano /etc/portage/make.conf

8. Odaberite svoje USE zastavice za proces kompajliranja (možete ostaviti kakav jeste ako vaš server ne zahtijeva određene module), a zatim instalirajte Apache koristeći sljedeću naredbu.

emerge --ask www-servers/apache

9. Prije pokretanja Apache servisa pokrenite sljedeću naredbu da biste izbjegli grešku ServerName, a zatim pokrenite httpd demon.

echo “ServerName localhost” >> /etc/apache2/httpd.conf

service apache2  start

OR

/etc/init.d/apache2 start

10. U sljedećem koraku instalirajte PHP dinamički skript jezik. Zbog bogatstva PHP modula, ovaj vodič će vam predstaviti veliku listu modula koji se koriste kao USE zastavice, ali treba da se držite onih koje vaša konfiguracija servera zahtijeva.

Prvo nabavite USE specifične zastavice za PHP koristeći naredbu ispod.

emerge -pv php

11. Zatim uredite datoteku /etc/portage/make.conf i koristite sljedeće USE oznake za PHP5.5 > (USE zastavice moraju biti u jednom redu).

USE="apache2 php pam berkdb bzip2 cli crypt ctype exif fileinfo filter gdbm hash iconv ipv6 json -ldap nls opcache phar posix readline session simplexml spell ssl tokenizer truetype unicode xml zlib -bcmath calendar -cdb cgi -cjk curl -debug -embed -enchant -firebird -flatfile -fpm (-frontbase) ftp gd -gmp imap -inifile -intl -iodbc -kerberos -ldap-sasl -libedit libmysqlclient -mhash -mssql mysql mysqli -oci8-instant-client -odbc -pcntl pdo -postgres -qdbm -recode (-selinux) -sharedmem -snmp -soap -sockets -sqlite (-sybase-ct) -systemd -sysvipc -threads -tidy -wddx -xmlreader -xmlrpc -xmlwriter -xpm -xslt zip jpeg png pcre session unicode"

PHP_TARGETS="php5-5"

Druga metoda koju možete koristiti je ponavljanje USE zastavica da biste uključili željene PHP module i opcije u datoteku /etc/portage/package.use.

echo “dev-lang/php apache2 cgi ctype curl curlwrappers -doc exif fastbuild filter ftp hash inifile json mysql mysqli pdo pic posix sockets spell truetype xml zip” >> /etc/portage/package.use

12. Nakon što ste odabrali potrebne USE zastavice koristeći jednu od dvije predstavljene metode, instalirajte PHP sa sljedećom komandom.

emerge --ask dev-lang/php

13. Proces nastajanja PHP-a može potrajati neko vrijeme u zavisnosti od resursa vašeg sistema i nakon što završi recite Apacheu da koristi PHP module uređujući /etc/conf.d/apache2 datoteku i dodajte PHP5 na APACHE2_OPTS direktivu.

nano /etc/conf.d/apache2

Neka linija APACHE2_OPTS izgleda ovako.

APACHE2_OPTS="-D DEFAULT_VHOST -D INFO -D SSL -D SSL_DEFAULT_VHOST -D LANGUAGE -D PHP5"

Da biste dobili listu instaliranih modula, koristite sljedeću naredbu.

ls -al /etc/apache2/modules.d/

14. Da biste testirali konfiguraciju servera do sada, kreirajte datoteku phpinfo u korijenskom direktoriju localhost (/var/www/localhost/htdocs/) i ponovo pokrenite Apache servis, a zatim usmjerite svoj pretraživač na http://localhost/info.php ili http://system_IP/info.php.


echo "<!--?php phpinfo(); ?-->"  /var/www/localhost/htdocs/info.php
service apache2  restart

OR

/etc/init.d/apache2  restart

Ako dobijete isti rezultat kao na slici iznad, vaš server je ispravno konfigurisan. Dakle, možemo krenuti naprijed sa MySQL bazom podataka i PhpMyAdmin instalacijom.

15. Prije instaliranja MySQL baze podataka provjerite paket USE flags i uredite Portage make.conf ako je potrebno. Koristite sljedeće naredbe da provjerite i instalirate MySQL-server bazu podataka.

emerge -pv mysql
emerge --ask dev-db/mysql

16. Prije nego što pokrenete MySQL server provjerite da li je MySQL baza podataka instalirana na vašem sistemu koristeći sljedeću naredbu.

/usr/bin/mysql_install_db

17. Sada pokrenite MySQL bazu podataka i osigurajte je korištenjem mysql_secure_installation tako što ćete promijeniti root lozinku, onemogućiti root prijavu izvan lokalnog hosta, ukloniti anonimnog korisnika i testirati bazu podataka.

service mysql start
mysql_secure_installation

18. Za testiranje funkcionalnosti baze podataka prijavite se na MySQL izdavanjem naredbe ispod i izađite iz baze podataka sa naredbom quit.

mysql -u roo -p
mysql> select user,host from mysql.user;
mysql> quit;

19. Ako vam je potreban grafički interfejs za upravljanje MySQL serverom, instalirajte PhpMyAdmin paket tako što ćete pokrenuti ove komande.

emerge -pv phpmyadmin
emerge  dev-db/phpmyadmin

20. Nakon što je paket preveden i instaliran, kreirajte konfiguracijsku datoteku za PhpMyAdmin tako što ćete kopirati njen šablonski fajl i zamijeniti blowfish_secret pristupnu frazu koristeći proizvoljni niz.

cp /var/www/localhost/htdocs/phpmyadmin/config.sample.inc.php  /var/www/localhost/htdocs/phpmyadmin/config.inc.php
nano /var/www/localhost/htdocs/phpmyadmin/config.inc.php

21. Testirajte proces prijave na PhpMyAdmin otvaranjem pretraživača i koristite sljedeći URL.

http://localhost/phpmyadmin

22. Ako je sve na svom mjestu, možda ćete htjeti automatski pokrenuti svoje usluge nakon ponovnog pokretanja tako što ćete ih učiniti dostupnima širom sistema koristeći sljedeće komande.

rc-update -v add apache2 default
rc-update -v add mysql default

To je sve! Sada imate dinamično web okruženje sa Apache, PHP skript jezikom i relacionom MySQL bazom podataka na visoko fleksibilnoj i prilagodljivoj serverskoj platformi koju obezbeđuje Gentoo.