Outils pour utilisateurs

Outils du site


doc:apache
Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

doc:apache [2016/07/04 21:43] (Version actuelle)
Ligne 1: Ligne 1:
 += Apache =
  
 +== Configuration ==
 +
 +=== Déplacer le dossier racine hors de /var/www ===
 +
 +Depuis debian 8, dans le fichier /​etc/​apache2/​apache2.conf il faut mettre le dossier contenant vos sites dans une liste blanche pour pouvoir les afficher.
 +Pour cela, dans le fichier /​etc/​apache2/​apache2.conf,​ il faut repérer : 
 +
 +  <​Directory /​var/​www/>​
 +           ​Options Indexes FollowSymLinks
 +           ​AllowOverride None
 +           ​Require all granted
 +  </​Directory>​
 +
 +copier/​coller le paragraphe et remplacer /var/www/ par le dossier racine de vos sites.
 +
 +
 +=== Les virtual Hosts ===
 +
 +Sous Debian squeeze, les fichiers de conf se trouvent dans
 +
 +  /​etc/​apache2/​
 +
 +A l'​intérieur,​ se trouve deux dossiers : sites-available et sites-enabled. Le premier dossier contient les fichiers de conf des sites qui sont disponibles et le deuxième contient les fichiers de conf pour les sites activé.
 +
 +On commence par vider le dossier sites-enabled puis on créer un fichier monsite.tld.conf dans le dossier site-available. Dans lequel on met :
 +
 +  <​VirtualHost ip_local_du_serveur:​80>​
 +        ServerAdmin adress_mail@admin_du.site
 +        ServerName monsite.tld
 +        ServerAlias www.monsite.tld
 +        DocumentRoot /​emplacement/​du/​dossier/​du/​site/​
 +  </​VirtualHost>​
 +
 +Ensuite on vas dans le dossier site-enabled et on créé un lien symbolique de notre fichier de conf dans le dossier sites-enabled :
 +
 +  cd /​etc/​apache2/​site-enabled/​
 +  ln -s ../​site-available/​monsite.tld.conf
 +
 +Finalement, il faut éditer le fichier de conf et trouver les lignes :
 +
 +  NameVirtualHost *:80
 +  ServerName
 +
 +Qu'il faut modifier pour mettre :
 +
 +  NameVirtualHost adresse.ip.local.du_serveur:​80
 +  ServeurName adresse.ip.local.du_serveur
 +
 +Pensez à redémarrer le serveur et là, ca doit marcher.
 +
 +On peut ajouter autant de virtualhost que l'on souhaite. Il suffit pour ce faire de créer un autre fichier.conf dans le dossier site-available et de le lier dans site-enabled. On remplace bien sur les nom de domaine par ceux souhaités et on n'​oublie pas de déclarer les domaines et sous domaines dans le dns et ca roule.
 +
 +
 +A chaque modification de la config d'​apache arrêter et relancer le service apache comme ca:
 +  /​etc/​init.d/​apache2 restart
 +
 +== ssl ==
 +
 +=== Générer le certificat ===
 +
 +Pour pouvoir utiliser ssl sur apache, il faut récupérer un certificat. Soit en acheter un auprès d'une autorité compétente,​ soit en généré un auto-signé. ​
 +
 +Vous pouvez voir [[/​doc/​ssl|comment faire pour en créer un auto signé ici]]
 +
 +Mettre la clé et son certificat dans le dossier :
 +
 +  /​etc/​apache2/​ssl/​
 +
 +=== Modification du fichier de conf ===
 +
 +Il faut aussi copier la ligne
 +  NameVirtualHost adresse.ip.local.du_serveur:​80
 +
 +Et la modifier pour avoir : 
 +  NameVirtualHost adresse.ip.local.du_serveur:​80
 +  NameVirtualHost adresse.ip.local.du_serveur:​443
 +
 +Ensuite dans le dossier /​etc/​apache2/​site-available il faut créer un fichier de configuration que l'on nommera https.monsite.tld.conf pour le sous domaine :
 +
 +  <​VirtualHost 192.168.0.10:​443>​
 +        ServerAdmin webmaster@localhost
 +        ServerAlias www.monsite.tld
 +        ServerName monsite.tld
 +        DocumentRoot /​mnt/​documents/​www/​weave/​
 +        SSLEngine on
 +        SSLCertificateFile ​   /​etc/​apache2/​ssl/​monsite.tld.crt
 +        SSLCertificateKeyFile /​etc/​apache2/​ssl/​monsite.tld.key
 +  </​VirtualHost>​
 +
 +=== Activation du module ssl ===
 +
 +Taper :
 +  a2enmod ssl
 +
 +Pensez à relancer le serveur après ca :
 +  /​etc/​init.d/​apache2 restart
 +
 +== htaccess ==
 +
 +exemple de fichier .htaccess
 +
 +  AuthUserFile /​fichier/​de/​pwd
 +  AuthGroupFile /dev/null
 +  AuthName "​Utilisateur inconnu"​
 +  AuthType Basic
 +  <LIMIT GET POST>
 +  Require valid-user
 +  </​LIMIT>​
 +
 +Utiliser un nom de fichier de mot de passe compliqué pour éviter que quelqu'​un ne le trouve et l'​ouvre et ne vois ainsi la liste des utilisateurs autorisé.
 +
 +Créer un fichier de mot de passe et ajouter un utilisateur : 
 +
 +  htpasswd -c /​chemin/​du/​fichier/​de/​pwd utilisateur
 +
 +Ajouter les utilisateurs suivant :
 +
 +  htpasswd /​chemin/​du/​fichier/​de/​pwd utilisateur
 +
 +== Liens Utiles ==
 +
 +* [[http://​www.commentcamarche.net/​contents/​apache/​apacht.php3|.htaccess]]
doc/apache.txt · Dernière modification: 2016/07/04 21:43 (modification externe)