Apache pour le développement local

Notes sur la configuration d'une serveur apache pour du développement web en local, sous Ubuntu et Fedora.

Configuration de la machine

sudo update-rc.d -f apache2 remove
Ubuntu : Suppression du lancement du serveur au démarrage de la machine.
# Apache service
## Fedora
apache_service="httpd"
## ubuntu
#apache_service="apache2"

## alias pour le serveur apache
alias apache-start="sudo service "$apache_service" start"
alias apache-stop="sudo service "$apache_service" stop"
alias apache-re="sudo service "$apache_service" reload"
alias apache-status="sudo service "$apache_service" status"
Alias bash pour gérer un serveur apache.

Personnalisation de la configuration

Fedora
  • /etc/httpd/conf
  • /etc/httpd/conf.d
Ubuntu
/etc/apache2/
Dossiers de configuration
Fedora
/etc/httpd/conf.d/00-local.conf
Ubuntu
/etc/apache2/sites-available/default
Fichiers de configuration
User [USER]
Group [GROUP]
Changer le propriétaire du service.
ServerAdmin [foo@bar.com]
Déclarer l'email de l'administrateur.
DocumentRoot "/path/to/www/"
# ...
<Directory "/path/to/www">
# ...
Changer la racine de publication.

Modules apache

Activation / désactivation

# Activation d'un module
sudo a2enmod [module_name]

# Désactivation d'un module
sudo a2dismod [module_name]
Ubuntu : activation / désactivation d'un module apache.
LoadModule [module_name] [path/to/module]
Fedora : activation / désactivation d'un module apache par mise en commentaire de la ligne correspondante dans les fichiers /etc/httpd/conf.modules.d/*.
Modules utiles
  • deflate : Compression de contenu.
  • expires : Gestion des en-têtes HTTP Expires et Cache-Control.
  • headers : Gestion des en-têtes HTTP.
  • rewrite : Réécriture d'urls.
  • userdir : Activation des dossiers utilisateur.

Hôtes virtuels

<VirtualHost *:80>
    ServerName   localhost
    DocumentRoot [/path/to/www/]
    <Directory [/path/to/www/]>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride all
        Require host 127.0.1.1
    </Directory>
</VirtualHost>
Déclaration de l'hôte virtuel par défaut.
<VirtualHost *:80>
    ServerName   [site_name]
    DocumentRoot [/path/to/www/site/]
    # Fedora
    ErrorLog /var/log/httpd/error-[site_name].log
    # Ubuntu
    # ErrorLog /var/log/apache/error-[site_name].log
    <Directory [/path/to/www/site/]>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride all
        # Apache 2.2
        #Order Deny,Allow
        #Deny from all
        #Allow from 127.0.1.1
        #Allow from ::1
        # Apache 2.4
        Require host 127.0.1.1
    </Directory>
</VirtualHost>
Déclaration d'un hôte virtuel pour site_name.
127.0.0.1   localhost   [site_name]
::1         localhost6  [site_name]
Edition du fichier /etc/hosts pour ajouter le nom de serveur correspondant à un hôte virtuel apache.

Références

Documentation du Serveur HTTP Apache Version 2.4. httpd.apache.org

Mise à jour de la version 2.2 vers la version 2.4. httpd.apache.org

Installation et configuration d'Apache. Fedora-fr,

Serveur HTTP Apache 2. Ubuntu-fr,

Historique

2012-12-01
Refonte totale de l'article pour devenir un simple