Outils pour utilisateurs

Outils du site


informatique:serveur:lamp

Ceci est une ancienne révision du document !


Un serveur LAMP

Installation de base

L'idée est d'installer un serveur Web en local, pour des tests et du bidouillage de template de CMS. On part sur une base d'une distribution GNU/Linux, en l'occurrence une Debian Jessie.

On met à jour la liste des paquets :

 aptitude update

On installe les paquets de base, comprenant le serveur Web Apache proprement dit, le langage PHP et un serveur MySQL, ici MariaDB :

 aptitude install apache2 php5 mariadb-common mariadb-server php5-mysql

Il faut attribuer un mot de passe solide pour l'utilisateur root de MariaDB :

En se rendant avec son navigateur Web préféré à la racine de son serveur local (http://localhost/), on devrait voir s'afficher la page par défaut d'Apache, qui donne quelques explications.

Quelques modules PHP

Sont très souvent nécessaires ou au moins utiles :

 aptitude install php5-gd php5-imagick

Après installation, il est nécessaire de redémarrer Apache : apache2ctl graceful.

Une adresse IP fixe

S'il s'agit d'un serveur Web sur sa propre machine, ce n'est pas nécessaire. S'il s'agit d'un serveur Web en production, ça peut être utile. Il faut modifier le fichier /etc/network/interfaces comme suit :

auto lo
iface lo inet loopback

iface eth0 inet static
address 192.168.0.x
gateway 192.168.0.x
netmask 255.255.255.0

L'address est l'IP à attribuer au serveur. gateway est l'adresse IP du routeur.

Apache2

Pour vérifier l'état du service :

systemctl status apache2

Pour vérifier la syntaxe de la configuration :

apachectl configtest

ServerName

Lors des redémarrage d'Apache, il lui arrive de signaler qu'il n'a pu déterminer le nom du serveur et qu'il utilise donc l'adresse IP publique, s'il l'a trouve, ou locale.

Pour résoudre cette situation, il faut vérifier :

  1. Que la commande hostname renvoie bien le nom désiré. Si ce n'est pas le cas, il faut renseigner correctement le fichier /etc/hostname. Le changement est pris en compte au redémarrage. Pour l'éviter, en plus de modifier le fichier (pour le prochain redémarrage), on peut modifier cette valeur grâce à la commande hostname [nouveau-nom].
  2. Que le fichier /etc/hosts est correct, à savoir que l'adresse IP locale renvoie bien au nom de la machine.
  3. Dans la configuration, chaque VHOST peut avoir son ServerName, mais il peut être indiqué de donner un ServerName global. Il faut ajouter la ligne ServerName [www.example.com] tout au début du fichier /etc/apache2/site-available/000-default
ServerName [www.example.com] 
<VirtualHost *:80>
	# The ServerName directive sets the request scheme, hostname and port that
	# the server uses to identify itself. This is used when creating
	# redirection URLs. In the context of virtual hosts, the ServerName
	# specifies what hostname must appear in the request's Host: header to
	# match this virtual host. For the default virtual host (this file) this
	# value is not decisive as it is used as a last resort host regardless.
	# However, you must set it for any further virtual host explicitly.
	# ServerName www.example.com 

	ServerAdmin webmaster@example.com
	DocumentRoot /var/www/html

[...]

</VirtualHost>
informatique/serveur/lamp.1442569189.txt.gz · Dernière modification: 2018/07/29 09:08 (modification externe)