Installation af LAMP (Linux, Apache, MySQL, PHP og PhpMyAdmin) i Gentoo Linux


Den maksimale ydeevne, der opnås ved at kompilere software fra kilder med Gentoo, har en minimal indvirkning, hvis vi betragter hardwares strømforarbejdning i dag. Hvad er så formålet med at bruge Gentoo som en webserverplatform, kan du spørge? Den vigtigste egenskab, som Gentoo har, er dens ekstreme fleksibilitet, som Portage kan levere på specifikke opgaver, og den fulde kontrol, som den endelige bruger kan opnå over hele systemet, på grund af det faktum, at Gentoo er kompileret og bygge fra kilder og bruger ikke færdigpakket binær som de fleste Linux-distributioner.

Denne vejledning giver en trinvis installationsprocedure for den berømte LAMP stak ( Linux , Apache , MySQL og PHP / PhpMyAdmin ) ved hjælp af et minimalt Gentoo-installationsmiljø.

  1. Minimalt Gentoo Linux-miljø installeret som i denne vejledning (Installer Gentoo Linux)

Trin 1: Konfigurer statisk IP-adresse

1. Inden vi fortsætter med installationen af LAMP stack, skal systemet konfigureres med en statisk IP-adresse, hvilket er et "must" i tilfælde af en server. Men inden vi begynder at konfigurere statiske netværksindstillinger, skal du bruge kommandoen ifconfig til at vise navne på netværksinterfacekort.

# ifconfig -a

Som du kan se, kan NIC's navn afvige fra andre almindelige navne, der bruges i Linux, såsom ethX , ensXX eller andre, så noter dette navn for yderligere indstillinger.

2. Hvis du tidligere har brugt en DHCP -server til dit netværk, skal du sørge for at nedbryde og deaktivere DHCP-klient på dit system ved hjælp af følgende kommandoer (udskift IP'er og enheder med dit indstillinger).

# 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. Opret derefter et symbolsk link fra netværksloopback-enhed med navnet på din NIC's tilsluttede grænseflade, og opret en statisk konfigurationsfil til denne enhed i /etc/conf.d/ sti.

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

Rediger denne enhedsfil med følgende konfigurationer.

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. Når du er færdig med at redigere NICs statiske konfigurationer, skal du starte netværksgrænsefladen og kontrollere netværksindstillinger og forbindelse ved hjælp af kommandoerne ifconfig og ping , og hvis alt er konfigureret, tilføj det for at starte processen.

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

Hvis du vil have DNS-navneservere konfigureret i hele systemet, skal du redigere /etc/resolv.conf -filen og tilføje navneserverstreng for hver DNS-IP-adresse.

Trin 2: Installer LAMP

5. Når du er færdig med netværksindstillinger, skal du fortsætte med at installere LAMP stakken, men ikke før du bekræfter Gentoo-profiler og opdaterer Portage-træet og systemet.

For en internetadvendt server med sikkerhedspatches vil du sandsynligvis bruge en hærdet profil, der ændrer pakkeindstillinger for hele dit system (masker, USE-flag osv.). Brug følgende kommandoer til at liste og ændre din profil.

$ sudo eselect profile list
$ sudo eselect profile set 11

6. Når den bedst egnede profil til dig er blevet indstillet, skal du opdatere dit system og Portage-træet.

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

7. Nu er det tid til at fortsætte med LAMP-installationen. Bekræft Apache-webserverdokumentationen for USE-flag ved hjælp af emerge –pv kommandokontakten, og rediger derefter Portage make.conf -filen med de krævede USE-flag, inden du prøver at installer det.

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

8. Vælg dine BRUG flag til kompilering (du kan lade det være, som det er, hvis din server ikke har brug for bestemte moduler), og installer derefter Apache ved hjælp af følgende kommando.

# emerge --ask www-servers/apache

9. Inden du starter Apache-tjenesten, skal du køre følgende kommando for at undgå Servernavn -fejl, og start derefter httpd-dæmonen.

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

OR

# /etc/init.d/apache2 start

10. Installer PHP dynamisk script-sprog på det næste trin. På grund af PHP-modulernes rigdom præsenterer denne tutorial dig en stor modulliste, der bruges som USE-flag , men du skal holde dig til dem, din serverkonfiguration kræver.

Få først BRUG specifikke flag til PHP ved hjælp af nedenstående kommando.

# emerge -pv php

11. Rediger derefter /etc/portage/make.conf filen og brug følgende USE flag til PHP5.5 (USE-flag skal være på en enkelt linje).

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"

En anden metode, du kan bruge, er at gentage USE-flag for at inkludere ønskede PHP-moduler og valgmuligheder i filen /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. Når du har valgt påkrævet USE-flag ved hjælp af en af de to præsenterede metoder, skal du installere PHP med følgende kommando.

# emerge --ask dev-lang/php

13. PHP-ny proces kan tage et stykke tid afhængigt af dine systemressourcer, og efter at den er færdig, bedes Apache om at bruge PHP-moduler ved at redigere /etc/conf.d/apache2 filen og tilføje PHP5 på APACHE2_OPTS direktivet.

# nano /etc/conf.d/apache2

Få linjen APACHE2_OPTS til at se sådan ud.

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

Brug følgende kommando for at få en liste over installerede moduler.

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

14. For at teste serverkonfigurationen hidtil skal du oprette en phpinfo -fil i localhost-rodmappen (/var/www/localhost/htdocs/) og genstarte Apache-tjenesten og derefter pege på din browser til http: //localhost/info.php eller http: //system_IP/info.php .

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

OR

# /etc/init.d/apache2  restart

Hvis du får det samme resultat som billedet ovenfor, er din server korrekt konfigureret. Så vi kan gå videre med MySQL-database og PhpMyAdmin-installation.

15. Før du installerer MySQL-database, skal du kontrollere pakke USE-flag og redigere Portage make.conf hvis det kræves. Brug følgende kommandoer til at verificere og installere MySQL-server database.

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

16. Før du starter MySQL-serveren, skal du sørge for, at MySQL-databasen er installeret på dit system ved hjælp af følgende kommando.

# /usr/bin/mysql_install_db

17. Start nu MySQL-databasen, og sikre den ved hjælp af mysql_secure_installation ved at ændre rodadgangskode, deaktivere rodlogin uden for localhost, fjerne anonym bruger og testdatabase.

# service mysql start
# mysql_secure_installation

18. For at teste databasefunktionalitet skal du logge ind på MySQL ved at udstede kommandoen nedenfor og afslutte database med afslutningserklæring.

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

19. Hvis du har brug for en grafisk grænseflade til at styre MySQL-serveren, skal du installere PhpMyAdmin -pakken ved at køre disse kommandoer.

# emerge -pv phpmyadmin
# emerge  dev-db/phpmyadmin

20. Når pakken er kompileret og installeret, skal du oprette en konfigurationsfil til PhpMyAdmin ved at kopiere dens skabelonfil og erstatte blowfish_secret adgangssætning ved hjælp af en vilkårlig streng.

# 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. Test PhpMyAdmin-loginprocessen ved at åbne en browser og bruge følgende URL.

http://localhost/phpmyadmin

22. Hvis alt er på plads, vil du muligvis automatisk starte dine tjenester efter genstart ved at gøre dem tilgængelige hele systemet ved hjælp af følgende kommandoer.

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

Det er alt! Nu har du et dynamisk webmiljø med Apache, PHP-skriptsprog og relationel MySQL-database på en høj fleksibel og tilpasselig serverplatform leveret af Gentoo.