Contenu | Rechercher | Menus

Différences

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

Lien vers cette vue comparative

Both sides previous revision Révision précédente
Prochaine révision
Révision précédente
apache2 [Le 08/05/2013, 15:40]
109.28.132.11 [Installation]
apache2 [Le 04/11/2014, 10:31] (Version actuelle)
89.225.202.84 [Redémarrer Apache2]
Ligne 14: Ligne 14:
 Des liens vers [[tutoriel:​securiser_apache2_avec_ssl|sécuriser Apache avec SSL]], [[tutoriel:​virtualhosts_avec_apache2|virtualhosts avec Apache]] et d'​autres documentations seront donnés au moment opportun.\\ Des liens vers [[tutoriel:​securiser_apache2_avec_ssl|sécuriser Apache avec SSL]], [[tutoriel:​virtualhosts_avec_apache2|virtualhosts avec Apache]] et d'​autres documentations seront donnés au moment opportun.\\
  
 +<note important>​Utilisateurs de Ubuntu 13.10 et suivante : 
 +
 +La version de Apache installée sur cette distribution est la version 2.4.6-2.
 +Ce changement de version implique des changements de certaines directives présentes dans vos VHOSTS.
 +
 +Référez-vous à la page : [[http://​httpd.apache.org/​docs/​2.4/​upgrading.html]] ; cette page décrit, en détails, les changements entre la version 2.2 et la version 2.4.
 +</​note>​
 ===== Pré-requis ===== ===== Pré-requis =====
  
Ligne 20: Ligne 27:
   * Un serveur ​    ​[[:​bind9|DNS]] configuré (pour le domaine).   * Un serveur ​    ​[[:​bind9|DNS]] configuré (pour le domaine).
  
-===== Introduction : HTTP l======+===== Introduction : HTTP ======
 ==== Qu'​est-ce que le Web ? ==== ==== Qu'​est-ce que le Web ? ====
  
Ligne 82: Ligne 89:
  
 Apache est composé de plusieurs paquets. Apache est composé de plusieurs paquets.
- 
-béta installation apache 2.4.4 
- 
-installer les depots officiel multiverse et backport ainsi que leur sources 
- 
-ex ubuntu 12.04 
- 
- 
-<​code>​sudo su</​code>​ 
-<​code>​cat > /​etc/​apt/​sources.list <<EOF 
-deb http://​fr.archive.ubuntu.com/​ubuntu/​ precise main restricted 
-deb http://​security.ubuntu.com/​ubuntu precise-security main restricted 
-deb http://​fr.archive.ubuntu.com/​ubuntu/​ precise-updates main restricted 
- 
-# Dépôts de sources (uniquement utiles pour télécharger les sources avec apt-get source. Dans ce cas, enlever les #) 
-deb-src http://​fr.archive.ubuntu.com/​ubuntu/​ precise main restricted 
-deb-src http://​security.ubuntu.com/​ubuntu precise-security main restricted 
-deb-src http://​fr.archive.ubuntu.com/​ubuntu/​ precise-updates main restricted 
- 
-deb http://​fr.archive.ubuntu.com/​ubuntu/​ precise universe multiverse 
-deb http://​security.ubuntu.com/​ubuntu precise-security universe multiverse 
-deb http://​fr.archive.ubuntu.com/​ubuntu/​ precise-updates universe multiverse 
- 
-# Dépôts de sources (uniquement utiles pour télécharger les sources avec apt-get source. Dans ce cas, enlever les #) 
-deb-src http://​fr.archive.ubuntu.com/​ubuntu/​ precise universe multiverse 
-deb-src http://​security.ubuntu.com/​ubuntu precise-security universe multiverse 
-deb-src http://​fr.archive.ubuntu.com/​ubuntu/​ precise-updates universe multiverse 
-deb http://​fr.archive.ubuntu.com/​ubuntu/​ precise-backports main restricted universe multiverse 
- 
-# Dépôts de sources (uniquement utiles pour télécharger les sources avec apt-get source. Dans ce cas, enlever les #) 
-deb-src http://​fr.archive.ubuntu.com/​ubuntu/​ precise-backports main restricted universe multiverse 
-EOF 
-exit</​code>​ 
- 
- 
-installer les dépendance 
- 
- 
-<​code>​sudo apt-get update</​code>​ 
-<​code>​sudo apt-get -y upgrade</​code>​ 
-<​code>​sudo apt-get -y install git vim libmcrypt-dev</​code>​ 
-<​code>​sudo apt-get -y purge apache2 php5</​code>​ 
-<​code>​sudo apt-get -y build-dep apache2 php5</​code>​ 
- 
- 
- 
- 
- 
-compilation manuelle 
- 
-<​code>​cd /​usr/​local/​src</​code>​ 
-<​code>​git clone https://​github.com/​apache/​httpd.git httpd-2.4.4</​code>​ 
-<​code>​cd httpd-2.4.4</​code>​ 
-<​code>​git clone https://​github.com/​apache/​apr.git srclib/​apr</​code>​ 
-<​code>​./​buildconf</​code>​ 
-<​code>​./​configure -enable-modules=all --with-included-apr --enable-mpm=worker --enable-suexec --enable-rewrite</​code>​ 
-<​code>​make</​code>​ 
-<​code>​sudo apt-get -y install checkinstall</​code>​ 
-<​code>​sudo checkinstall --pkgname=apache2-4 --pkgversion="​2.4.4"​ --backup=no --deldoc=yes --fstrans=no --default</​code>​ 
-<​code>​mkdir $HOME/​deb</​code> ​ 
-<​code>​sudo mv *.deb $HOME/​deb</​code>​ 
-vous pouvez récupérer le pacquet deb dans votre répertoire perssonelle $HOME/deb 
-celui ci a déjà était installer 
- 
- 
-  
- 
-installation depuis pacquet deb ubuntu 12.04 and 64 uniquement 
- 
- 
-<​code>​wget http://​www.petit-fichier.fr/​2013/​05/​08/​apache2-4-2-4-4-1-amd64/​apache2-4-2-4-4-1-amd64.deb</​code>​ 
-<​code>​sudo dpkg -i apache2-4-2-4-4-1-amd64.deb</​code>​ 
- 
-configurer 
- 
- 
-<​code>​sudo ln -s /​usr/​local/​apache2/​bin/​* /​usr/​local/​bin/</​code>​ 
-<​code>​sudo rm -rf /​etc/​init.d/​apache2</​code>​ 
-<​code>​sudo ln -s /​usr/​local/​bin/​apachectl /​etc/​init.d/​apache2</​code>​ 
-<​code>​sudo update-rc.d -f apache2 remove</​code>​ 
-<​code>​sudo sed -i '​s|Define DOCROOT "/​usr/​local/​apache2/​htdocs"​|Define DOCROOT "/​var/​www"​|'​ /​usr/​local/​apache2/​conf/​httpd.conf</​code>​ 
-<​code>​sudo chown -Rf www-data:​www-data /​var/​www</​code>​ 
-<​code>​sudo update-rc.d -f apache2 defaults 91 09</​code>​ 
-<​code>​sudo /​etc/​init.d/​apache2 stop</​code>​ 
-<​code>​sudo mkdir /​usr/​local/​apache2/​logs/</​code>​ 
-<​code>​sudo /​etc/​init.d/​apache2 start</​code>​ 
- 
-désinstaller 
- 
-<​code>​sudo /​etc/​init.d/​apache2 stop 
-sudo rm -f /​usr/​local/​bin/​ab /​usr/​local/​bin/​apachectl /​usr/​local/​bin/​apr-2-config /​usr/​local/​bin/​apxs /​usr/​local/​bin/​checkgid /​usr/​local/​bin/​dbmmanage /​usr/​local/​bin/​envvars /​usr/​local/​bin/​envvars-std /​usr/​local/​bin/​fcgistarter /​usr/​local/​bin/​firehose /​usr/​local/​bin/​htcacheclean /​usr/​local/​bin/​htdbm /​usr/​local/​bin/​htdigest /​usr/​local/​bin/​htpasswd /​usr/​local/​bin/​httpd /​usr/​local/​bin/​httxt2dbm /​usr/​local/​bin/​logresolve /​usr/​local/​bin/​rotatelogs /​usr/​local/​bin/​suexec 
-sudo update-rc.d -f apache2 remove 
-sudo rm -rf /​etc/​init.d/​apache2 
-sudo apt-get -y purge apache2-4 
-sudo rm -rf /​usr/​local/​apache2</​code>​ 
 ====Installation de base==== ====Installation de base====
  
Ligne 191: Ligne 103:
  
 Un beau message va s'​afficher dans votre navigateur ​ **It Works**, c'est le contenu du fichier **/​var/​www/​index.html** (configuration par défaut) Un beau message va s'​afficher dans votre navigateur ​ **It Works**, c'est le contenu du fichier **/​var/​www/​index.html** (configuration par défaut)
 +
 +=== Depuis Ubuntu 14.04===
 +Depuis cette version, le répertoire par défaut n'est plus "/​var/​www"​ mais "/​var/​www/​html"​. Si vous n'avez pas touché aux fichiers de config par défaut de apache et que vos site en localhost ne sont plus accessible, vous pouvez les déplacer dans ce dossier "/​var/​www/​html"​ ou changer le chemin du "​DocumentRoot"​ dans le fichier "/​etc/​apache2/​sites-available/​000-default.conf"​
 ====La bibliothèque,​ le serveur et ses outils==== ====La bibliothèque,​ le serveur et ses outils====
  
Ligne 677: Ligne 592:
 # Le * derrière VirtualHost définit ici que le vhost est valable pour toutes les IPs sur lesquelles apache écoute. # Le * derrière VirtualHost définit ici que le vhost est valable pour toutes les IPs sur lesquelles apache écoute.
 <​VirtualHost domain.tld:​80>​ <​VirtualHost domain.tld:​80>​
-# ServerName ​définie ​le nom utilisé pour le vhost. Mettez le nom de l'​hôte du domaine+# ServerName ​définit ​le nom utilisé pour le vhost. Mettez le nom de l'​hôte du domaine
 ServerName www.domain.tld ServerName www.domain.tld
-# ServerAlias ​définie ​les autres sous domaines pour lesquels le serveur répondra.+# ServerAlias ​définit ​les autres sous domaines pour lesquels le serveur répondra.
 ServerAlias domain.tld *.domain.tld ServerAlias domain.tld *.domain.tld
 # ServerAdmin vous permet de spécifier un email à utiliser en cas de problème, sur une page d'​erreur 404 par exemple. # ServerAdmin vous permet de spécifier un email à utiliser en cas de problème, sur une page d'​erreur 404 par exemple.
Ligne 823: Ligne 738:
  
 <​code>​ServerName localhost</​code>​ <​code>​ServerName localhost</​code>​
 +
 +<note tip>On peut l'​écrire aussi directement à la fin du fichier **/​etc/​apache2/​httpd.conf** si ça ne marche vraiment pas (ce qui a été mon cas).</​note>​
  
 On enregistre, on quitte et on redémarre Apache : On enregistre, on quitte et on redémarre Apache :
Ligne 857: Ligne 774:
 Si il y a des messages d'​erreurs regarder les fichiers suivant:\\ Si il y a des messages d'​erreurs regarder les fichiers suivant:\\
 <​code>​ <​code>​
-tail /​var/​log/​syslog +tail -f /​var/​log/​syslog 
-tail /​var/​log/​apache2/​access.log +tail -f /​var/​log/​apache2/​access.log 
-tail /​var/​log/​apache2/​error.log+tail -f /​var/​log/​apache2/​error.log
 </​code>​ </​code>​
  
Ligne 892: Ligne 809:
  
 Il est possible d'​ajouter des modules à apache, ajoutant des fonctionnalités à votre serveur web. Il est possible d'​ajouter des modules à apache, ajoutant des fonctionnalités à votre serveur web.
-Tous les modules sont répertoriés ici : +Tous les modules sont répertoriés ici : /​etc/​apache2/​mods-available
 ==== Activer l'url rewriting ==== ==== Activer l'url rewriting ====
  
 Chargez le module rewrite : Chargez le module rewrite :
-<​code>​sudo a2enmod rewrite</​code>​+<​code>​a2enmod rewrite</​code>​
  
 Ensuite, deux possibilités s'​offrent à vous suivant vos capacités de gestion de votre serveur : Ensuite, deux possibilités s'​offrent à vous suivant vos capacités de gestion de votre serveur :
Ligne 1047: Ligne 964:
  
 Créer un dossier nommé public_html dans votre home et essayer, ça devrait marcher :) Créer un dossier nommé public_html dans votre home et essayer, ça devrait marcher :)
- 
-<note warning> Sur Ubuntu 11.04, les droits d'​accès au répertoire /home/user sont insuffisants. Vous risquez d'​avoir une erreur 403 "​permission denied"​. SI le user est john, faire la manip suivante : 
- 
-  chgrp www-data /home/john/ 
-  chmod 750 /home/john/ 
-  ​ 
-</​note>​ 
  
 <note warning>​Sur Ubuntu 10.04 (Lucid) et 11.04 l'​exécution en php est désactivée par défaut avec ce module. Pour changer ça et éviter que le navigateur télécharge le code php directement,​ éditer le fichier ''/​etc/​apache2/​mods-enabled/​php5.conf''​ et commentez les lignes comme ci dessous : <note warning>​Sur Ubuntu 10.04 (Lucid) et 11.04 l'​exécution en php est désactivée par défaut avec ce module. Pour changer ça et éviter que le navigateur télécharge le code php directement,​ éditer le fichier ''/​etc/​apache2/​mods-enabled/​php5.conf''​ et commentez les lignes comme ci dessous :
Ligne 1146: Ligne 1056:
  
 [[:​eaccelerator]] [[:​eaccelerator]]
 +
 +
 +===== Empêcher le démarrage automatique d'​apache =====
 +<note warning> Méthode déconseillée pour un serveur en production ! </​note>​
 +
 +<​note>​Dans le cas d'un ordinateur de bureau, **apache** est souvent utilisé de façon occasionnelle pour développer et tester en local.
 +
 +Pour les amoureux de l'​écologie c'est de l'​énergie gaspillée sans raison valable. ​
 +
 +Pour les machines à faibles ressources, apache diminue la vitesse de démarrage  ​
 +
 +Autant de raisons valables pour démarrer manuelle apache quand nous en avons besoin et enlever le <<​[[https://​fr.wikipedia.org/​wiki/​Daemon_%28informatique%29|daemon]]>>/​service de démarrage automatique ! </​note>​
 +
 +==== Modifier le service apache avec upstart ====
 +Se reporter à l'​exemple : [[upstart#​utilisation|Upstart]]
 +
 +==== Supprimer le service apache de démarrage avec  update-rc.d====
 +
 +<​code>​ user@PCMachine:​~$ sudo update-rc.d -f apache2 remove </​code>​
 +
 +==== Restaurer le démarrage automatique d'​apache avec update-rc.d ====
 +
 +<​code>​ user@PCMachine:​~$ sudo update-rc.d apache2 default </​code>​
 +
  
  
Ligne 1159: Ligne 1093:
    * [[tutoriel/​securiser_apache2]]    * [[tutoriel/​securiser_apache2]]
    * [[tutoriel/​securiser_apache2_avec_ssl]]    * [[tutoriel/​securiser_apache2_avec_ssl]]
-   * (fr) [[http://​www.neoflow.fr/​tutoriels.category.51/apache.html|Plusieurs tutoriels sur la configuration d'​Apache]]+   * (fr) [[http://​www.it-connect.fr/​tutoriels/​serveur-web/apache/|Plusieurs tutoriels sur la configuration d'​Apache ​sur IT-Connect]]
  
 ---- ----
 // Contributeurs : [[:​utilisateurs:​benje]],​ [[:​utilisateurs:​Pepou06]],​ [[:​utilisateurs:​Oxossi]],​ [[:​utilisateurs:​Karting06]]. // // Contributeurs : [[:​utilisateurs:​benje]],​ [[:​utilisateurs:​Pepou06]],​ [[:​utilisateurs:​Oxossi]],​ [[:​utilisateurs:​Karting06]]. //


Le contenu de ce wiki est sous licence : CC BY-SA v3.0