Configurer apache pour les virtualhost

Avant tout il faut configurer apache

nano /etc/apache2/apache2.conf


Ajouter:
DirectoryIndex index.html index.php index.xhtml
UserDir public_html


Création des fichiers utilisateurs:
ln -s /etc/apache2/mods-available/userdir.load /etc/apache2/mods-enabled/userdir.load
ln -s /etc/apache2/mods-available/userdir.conf /etc/apache2/mods-enabled/userdir.conf


Redemarrage apache:
/etc/init.d/apache2 restart

Astuces pour automatisation de création index.html
mkdir /etc/skel/public_html
mkdir /etc/skel/logs
echo " <h1>Espace créé</h1> " > /etc/skel/public_html/index.html



Passons à la partie qui nous intéresse, le virtualhost

Création d'un utilisateur:
useradd -g www-data -m nosarts

Création et édition du virtuelhost de cet utilisateur:
nano /etc/apache2/sites-available/nosarts.com

Saisir:
<VirtualHost *>
ServerAdmin postmaster@nosarts.com
ServerName www.nosarts.com
ServerAlias nosarts.com *.nosarts.com
DocumentRoot /home/nosarts/public_html/
<Directory /home/nosarts/public_html/>
Options -Indexes FollowSymLinks MultiViews
AllowOverride All
</Directory>
ErrorLog /home/nosarts/logs/error.log
LogLevel warn
CustomLog /home/nosarts/logs/access.log combined
ServerSignature Off
</VirtualHost>


Rendre le site dispo:
ln -s /etc/apache2/sites-available/nosarts.com /etc/apache2/sites-enabled/nosarts.com

Redémarrage apache:
/etc/init.d/apache2 restart

Vérifions que cela marche

213.251.175.188/~nosarts

Refaite la partie virtualhost pour chaque domaine