Recherche de site Web

Installation de LAMP (Linux, Apache, MySQL, PHP et PhpMyAdmin) dans Gentoo Linux


Les performances maximales obtenues en compilant des logiciels à partir de sources avec Gentoo ont un impact minime, si l’on prend comme référence le traitement de puissance du matériel actuel. Alors, quel est le but d'utiliser Gentoo comme plate-forme de serveur Web, pourriez-vous demander ? Eh bien, l'attribut le plus important de Gentoo est son extrême flexibilité que Portage peut offrir sur des tâches spécifiques et le contrôle total que l'utilisateur final peut obtenir sur l'ensemble du système, du fait que Gentoo est compilé et construit à partir de sources et n'utilise pas de binaires préemballés comme la majorité des distributions Linux.

Ce guide fournit une procédure d'installation étape par étape pour la célèbre pile LAMP (Linux, Apache, MySQL et PHP/PhpMyAdmin) en utilisant un environnement d'installation Gentoo minimal.

Exigences

  1. Environnement Gentoo Linux minimal installé comme dans ce tutoriel (Installer Gentoo Linux)

Étape 1 : Configurer l'adresse IP statique

1. Avant de procéder à l'installation de la pile LAMP, le système doit être configuré avec une adresse IP statique, ce qui est un « must » dans le cas d'un serveur. Mais avant de commencer à configurer les paramètres statiques du réseau, utilisez la commande ifconfig pour afficher les noms des cartes d'interface réseau.

ifconfig -a

Comme vous pouvez le constater, le nom de la carte réseau peut différer des autres noms courants utilisés sous Linux tels que ethX, ensXX ou autres, alors notez ce nom pour des paramètres supplémentaires.

2. Si vous avez déjà utilisé un serveur DHCP pour votre réseau, assurez-vous de démonter et de désactiver le client DHCP sur votre système à l'aide des commandes suivantes. (remplacez les IP et les appareils par vos paramètres).

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. Créez ensuite un lien symbolique à partir du périphérique de bouclage réseau avec le nom de l'interface connectée de votre carte réseau et créez un fichier de configuration statique pour ce périphérique dans /etc/conf.d/ chemin.

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

Modifiez ce fichier de périphérique avec les configurations suivantes.

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. Après avoir terminé de modifier les configurations statiques de la carte réseau, démarrez l'interface réseau et vérifiez les paramètres réseau et la connexion à l'aide des commandes ifconfig et ping et si tout est correctement configuré. ajoutez-le pour démarrer le processus.

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

Si vous souhaitez que les serveurs de noms DNS soient configurés à l'échelle du système, modifiez le fichier /etc/resolv.conf et ajoutez la chaîne du serveur de noms pour chaque adresse IP DNS.

Étape 2 : Installer LAMPE

5. Une fois que vous avez terminé avec les paramètres réseau, procédez à l'installation de la pile LAMP, mais pas avant d'avoir vérifié les profils Gentoo et mis à jour l'arborescence et le système de Portage.

Pour un serveur connecté à Internet avec des correctifs de sécurité, vous souhaiterez probablement utiliser un profil renforcé qui modifie les paramètres du package pour l'ensemble de votre système (masques, indicateurs USE, etc.). Utilisez les commandes suivantes pour répertorier et modifier votre profil.

sudo eselect profile list
sudo eselect profile set 11

6. Une fois que le profil qui vous convient le mieux a été défini, mettez à jour votre système et votre arborescence Portage.

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

7. Il est maintenant temps de procéder à l’installation de LAMP. Vérifiez la documentation du serveur Web Apache pour les indicateurs USE à l'aide du commutateur de commande emerge –pv, puis modifiez le fichier make.conf de Portage avec les indicateurs USE requis avant d'essayer de Installez-le.

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

8. Choisissez vos indicateurs USE pour le processus de compilation (vous pouvez le laisser tel quel si votre serveur ne nécessite pas certains modules), puis installez Apache à l'aide de la commande suivante.

emerge --ask www-servers/apache

9. Avant de démarrer le service Apache, exécutez la commande suivante pour éviter l'erreur ServerName, puis démarrez le démon httpd.

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

service apache2  start

OR

/etc/init.d/apache2 start

10. À l'étape suivante, installez le langage de script dynamique PHP. En raison de la richesse des modules PHP, ce tutoriel vous présentera une grande liste de modules utilisés comme indicateurs USE, mais vous devez vous en tenir à ceux requis par la configuration de votre serveur.

Obtenez d'abord les indicateurs spécifiques USE pour PHP à l'aide de la commande ci-dessous.

emerge -pv php

11. Ensuite, modifiez le fichier /etc/portage/make.conf et utilisez les indicateurs USE suivants pour PHP5.5 (les drapeaux USE doivent être sur une seule ligne).

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"

Une autre méthode que vous pouvez utiliser consiste à faire écho aux indicateurs USE pour inclure les modules et options PHP souhaités dans le fichier /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. Après avoir sélectionné les indicateurs USE requis en utilisant l'une des deux méthodes présentées, installez PHP avec la commande suivante.

emerge --ask dev-lang/php

13. Le processus émergent de PHP peut prendre un certain temps en fonction des ressources de votre système. Une fois terminé, dites à Apache d'utiliser les modules PHP en éditant le fichier /etc/conf.d/apache2 et ajoutez PHP5 sur la directive APACHE2_OPTS.

nano /etc/conf.d/apache2

Faites en sorte que la ligne APACHE2_OPTS ressemble à ceci.

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

Pour obtenir une liste des modules installés, utilisez la commande suivante.

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

14. Pour tester la configuration du serveur jusqu'à présent, créez un fichier phpinfo dans le répertoire racine de localhost (/var/www/localhost/htdocs/) et redémarrez le service Apache, puis pointez votre navigateur vers http://localhost/info.php ou http://system_IP/info.php.


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

OR

/etc/init.d/apache2  restart

Si vous obtenez le même résultat que l’image ci-dessus alors votre serveur est correctement configuré. Nous pouvons donc avancer avec la base de données MySQL et l'installation de PhpMyAdmin.

15. Avant d'installer la base de données MySQL, vérifiez le package USE flags et modifiez Portage make.conf si nécessaire. Utilisez les commandes suivantes pour vérifier et installer la base de données du serveur MySQL.

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

16. Avant de démarrer le serveur MySQL, assurez-vous que la base de données MySQL est installée sur votre système à l'aide de la commande suivante.

/usr/bin/mysql_install_db

17. Maintenant, démarrez la base de données MySQL et sécurisez-la à l'aide de mysql_secure_installation en modifiant le mot de passe root, désactivez la connexion root en dehors de localhost, supprimez l'utilisateur anonyme et testez la base de données.

service mysql start
mysql_secure_installation

18. Pour tester la fonctionnalité de la base de données, connectez-vous à MySQL en exécutant la commande ci-dessous et quittez la base de données avec l'instruction quit.

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

19. Si vous avez besoin d'une interface graphique pour gérer le serveur MySQL, installez le package PhpMyAdmin en exécutant ces commandes.

emerge -pv phpmyadmin
emerge  dev-db/phpmyadmin

20. Une fois le package compilé et installé, créez un fichier de configuration pour PhpMyAdmin en copiant son fichier modèle et remplacez la phrase secrète blowfish_secret par une chaîne arbitraire.

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. Testez le processus de connexion à PhpMyAdmin en ouvrant un navigateur et en utilisant l'URL suivante.

http://localhost/phpmyadmin

22. Si tout est en place, vous souhaiterez peut-être démarrer automatiquement vos services après le redémarrage en les rendant disponibles dans tout le système à l'aide des commandes suivantes.

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

C'est tout! Vous disposez désormais d'un environnement Web dynamique avec Apache, le langage de script PHP et une base de données relationnelle MySQL sur une plate-forme serveur hautement flexible et personnalisable fournie par Gentoo.