Fifi atupa (Linux, Apache, MySQL, PHP ati PhpMyAdmin) sori Gentoo Linux


Išẹ ti o pọ julọ ti o waye nipasẹ ṣajọ sọfitiwia lati awọn orisun pẹlu Gentoo ni ipa ti o kere ju, ti a ba gba bi itọkasi ni ṣiṣe agbara ẹrọ oni. Lẹhinna kini idi ti lilo Gentoo bi ipilẹ olupin ayelujara ti o le beere? O dara, ẹda ti o ṣe pataki julọ ti Gentoo ni ni irọrun irọrun rẹ ti Portage le firanṣẹ lori awọn iṣẹ-ṣiṣe kan pato ati iṣakoso kikun ti olumulo ikẹhin le ṣaṣeyọri lori gbogbo eto naa, nitori otitọ pe Gentoo ti ṣajọ ati kọ lati awọn orisun ati pe ko lo alakomeji ti a ṣajọ tẹlẹ bi ọpọlọpọ ti awọn kaakiri Linux.

Itọsọna yii n pese igbesẹ nipasẹ ilana fifi sori ẹrọ igbesẹ fun olokiki LAMP akopọ ( Linux , Apache , MySQL , ati PHP / PhpMyAdmin ) ni lilo agbegbe fifi sori ẹrọ Gentoo ti o kere ju.

  1. Ibaṣepọ Linux Linux ti o kere julọ ti a fi sori ẹrọ bi ninu ẹkọ yii (Fi sori ẹrọ Linux Linux)

Igbesẹ 1: Tunto Adirẹsi IP Aimi

1. Ṣaaju ki a to tẹsiwaju pẹlu fifi atupa akopọ eto naa gbọdọ wa ni tunto pẹlu adiresi IP aimi, eyiti o jẹ "" gbọdọ "ni idi ti olupin kan. Ṣugbọn, ṣaaju ki a to tunto awọn eto aimi nẹtiwọọki lo awọn pipaṣẹ ifconfig lati fihan awọn orukọ Awọn kaadi Nẹtiwọọki Nẹtiwọọki.

# ifconfig -a

Bi o ṣe le rii orukọ NIC le yato si awọn orukọ miiran ti o wọpọ ti a lo ni Lainos bii ethX , ensXX tabi awọn miiran, nitorinaa ṣe akiyesi orukọ yii fun awọn eto siwaju.

2. Ti o ba ti lo olupin DHCP olupin fun nẹtiwọọki rẹ, rii daju pe o ya lulẹ ki o mu DHCP Onibara lori ẹrọ rẹ nipa lilo awọn ofin wọnyi (rọpo IPs ati awọn ẹrọ pẹlu rẹ ètò).

# 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. Lẹhinna ṣẹda ọna asopọ aami lati ẹrọ loopback nẹtiwọọki pẹlu orukọ ti asopọ NIC ti asopọ rẹ ati ṣẹda faili iṣeto aimi fun ẹrọ yii ni ọna /etc/conf.d/ .

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

Ṣatunkọ faili ẹrọ yii pẹlu awọn atunto atẹle.

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. Lẹhin ti pari ṣiṣatunkọ awọn atunto aimi NIC, bẹrẹ Ibaraẹnisọrọ Nẹtiwọọki ati ṣayẹwo awọn eto nẹtiwọọki ati asopọ ni lilo awọn ofin ifconfig ati ping ati pe ti o ba tunto ohun gbogbo ni aṣeyọri ṣafikun lati bẹrẹ ilana.

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

Ti o ba fẹ ki awọn olupin orukọ DNS jẹ atunto atunto-jakejado atunto /etc/resolv.conf faili ki o si fi okun orukọ olupin kun gbogbo adirẹsi IP IP.

Igbesẹ 2: Fi atupa sii

5. Lẹhin ti o ti pari pẹlu awọn eto nẹtiwọọki tẹsiwaju pẹlu fifi sori LAMP akopọ, ṣugbọn kii ṣe ṣaaju ki o to wadi awọn profaili Gentoo ki o ṣe imudojuiwọn igi Portage ati eto.

Fun olupin ti nkọju si Intanẹẹti pẹlu awọn abulẹ aabo o ṣee ṣe ki o fẹ lo profaili kan Hardened eyiti o yipada awọn eto package fun gbogbo eto rẹ (awọn iboju iparada, awọn asia USE, ati bẹbẹ lọ). Lo awọn ofin wọnyi lati ṣe atokọ ati yi profaili rẹ pada.

$ sudo eselect profile list
$ sudo eselect profile set 11

6. Lẹhin profaili ti o dara julọ fun ọ ti ṣeto, ṣe imudojuiwọn eto rẹ ati igi Portage.

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

7. Bayi o to akoko lati tẹsiwaju pẹlu fifi sori LAMP. Ṣayẹwo iwe-ipamọ Olupin Wẹẹbu Apache fun LILO awọn asia lilo farahan -pv pipaṣẹ pipaṣẹ, lẹhinna satunkọ Portage make.conf faili pẹlu awọn asia USE ti a beere ṣaaju igbiyanju si fi sii.

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

8. Yan LILO awọn asia rẹ fun ilana ikojọpọ (o le fi silẹ bi o ṣe jẹ ti olupin rẹ ko ba beere awọn modulu kan), lẹhinna fi Apache sii nipa lilo pipaṣẹ atẹle.

# emerge --ask www-servers/apache

9. Ṣaaju ki o to bẹrẹ iṣẹ Apache ṣiṣe aṣẹ atẹle lati yago fun aṣiṣe ServerName , lẹhinna bẹrẹ httpd daemon.

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

OR

# /etc/init.d/apache2 start

10. Lori igbesẹ ti n tẹle fi sori ẹrọ PHP ede kikọ ti o ni agbara. Nitori ọrọ awọn modulu PHP, itọnisọna yii yoo mu ọ ni atokọ awọn modulu nla ti a lo bi LILO awọn asia , ṣugbọn o yẹ ki o faramọ pẹlu awọn eyi ti iṣeto olupin rẹ nilo.

Akọkọ gba awọn asia pato LILO fun PHP ni lilo pipaṣẹ isalẹ.

# emerge -pv php

11. Lẹhinna ṣatunkọ faili /etc/portage/make.conf ki o lo awọn asia wọnyi USE fun PHP5.5 (awọn asia LILO gbọdọ wa ni titan ila kan).

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"

Ọna miiran ti o le lo ni nipa atunwiwa LILO awọn asia lati ni awọn modulu PHP ti o fẹ ati awọn aṣayan sinu faili /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. Lẹhin ti o ti yan beere LILO awọn asia lilo ọkan ninu awọn ọna ti a gbekalẹ meji, fi PHP sii pẹlu aṣẹ atẹle.

# emerge --ask dev-lang/php

13. Ilana ti o nwaye PHP le gba akoko diẹ da lori awọn orisun eto rẹ ati lẹhin ti o pari sọ fun Apache lati lo awọn modulu PHP nipa ṣiṣatunkọ /etc/conf.d/apache2 faili ki o ṣafikun PHP5 lori APACHE2_OPTS itọsọna.

# nano /etc/conf.d/apache2

Ṣe ila APACHE2_OPTS wo bi eyi.

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

Lati gba atokọ ti awọn modulu ti a fi sii lo pipaṣẹ atẹle.

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

14. Lati ṣe idanwo iṣeto ni olupin bẹ, ṣẹda phpinfo faili lori itọsọna roothost localhost (/var/www/localhost/htdocs/) ki o tun bẹrẹ iṣẹ Apache, lẹhinna tọka rẹ aṣawakiri si http://localhost/info.php tabi http://system_IP/info.php .

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

OR

# /etc/init.d/apache2  restart

Ti o ba gba abajade kanna bi aworan loke lẹhinna olupin rẹ ti ni atunto ni deede. Nitorinaa, a le lọ siwaju pẹlu ibi ipamọ data MySQL ati fifi sori ẹrọ PhpMyAdmin.

15. Ṣaaju ki o to fi sori ẹrọ ibi ipamọ data MySQL daju package LILO awọn asia ati satunkọ Portage make.conf ti o ba nilo. Lo awọn ofin wọnyi lati ṣayẹwo ati fi sori ẹrọ ibi ipamọ data olupin MySQL.

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

16. Ṣaaju ki o to bẹrẹ olupin MySQL rii daju pe a ti fi ibi ipamọ data MySQL sori ẹrọ rẹ nipa lilo pipaṣẹ atẹle.

# /usr/bin/mysql_install_db

17. Nisisiyi bẹrẹ ibi ipamọ data MySQL ki o ni aabo rẹ ni lilo mysql_secure_installation nipa yiyipada ọrọ igbaniwọle root, mu wiwọle wiwọle gbongbo ni ita localhost, yọ olumulo alailorukọ kuro ati idanwo data.

# service mysql start
# mysql_secure_installation

18. Lati ṣe idanwo iṣẹ-ṣiṣe data buwolu wọle si MySQL ipinfunni aṣẹ ni isalẹ ati jade data pẹlu alaye itusilẹ.

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

19. Ti o ba nilo iwoye ayaworan lati ṣakoso olupin MySQL fi sori ẹrọ package PhpMyAdmin nipa ṣiṣe awọn ofin yii.

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

20. Lẹhin ti o ti ṣajọ ati ti fi sii package naa, ṣẹda faili iṣeto fun PhpMyAdmin nipa didakọ faili awoṣe rẹ ki o rọpo ọrọ igbasẹ blowfish_secret ni lilo okun airotẹlẹ kan.

# 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. Ṣe idanwo ilana iwọle PhpMyAdmin nipa ṣiṣi ẹrọ aṣawakiri kan ati lo URL atẹle.

http://localhost/phpmyadmin

22. Ti ohun gbogbo ba wa ni ipo, o le fẹ lati bẹrẹ awọn iṣẹ rẹ laifọwọyi lẹhin atunbere nipa ṣiṣe wọn ni eto jakejado nipa lilo awọn ofin wọnyi.

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

Gbogbo ẹ niyẹn! Bayi o ni agbegbe wẹẹbu ti o ni agbara pẹlu Apache, ede afọwọkọ PHP ati ibatan MySQL ibatan lori ipilẹ irọrun to ga ati asefara olupin ti a pese nipasẹ Gentoo.