Serveur dédié

Bonjour,

 

Nous allons voir comment configurer un vhost apache2.4 pour faire pointer votre domaine vers votre serveur web et proteger un répertoire par .htaccess avec le mod_rewrite d'apache2.4 .

 

vous allez créé un vhost dans /etc/apache2/site-available/votre-domaine.tld.conf

sudo nano /etc/apache2/site-available/votre-domaine.tld.conf

Collez ce qui suit et adaptez le à la configuration de votre serveur web :

 

# Apache doit écouter sur le port 80 pour le http
# il est aussi possible de répondre à des requêtes sur des ports non standards
# ou même de ne pas définir de port spécifique en utilisant "*"
<VirtualHost *:80>
# nom d'hôte que le serveur utilise
ServerAdmin Cette adresse e-mail est protégée contre les robots spammeurs. Vous devez activer le JavaScript pour la visualiser. ServerName domain.tld
# noms alternatifs que le serveur utilise pour servir le même contenu

ServerAlias www.domain.tld
Alias /votre-alias /home/sites/domain.tld/public_html

# path de la racine du contenu à servir
DocumentRoot /home/sites/domain.tld/public_html/
# ces règles s'appliquent à la racine
# et à tous les répertoires et fichiers descendants

<Directory /home/sites/domain.tld/public_html/>

# interdiction de lister les fichiers dossier
RewriteEngine On

Options -Indexes +FollowSymLinks
AllowOverride All
Order allow,deny
allow from all
Require all granted
</Directory>
ErrorLog /home/sites/domain.tld/logs/error.domain.tld.log
LogLevel warn CustomLog /home/sites/domain.tld/logs/access.domain.tld.log combined
# on peut néanmoins les redéfinir ou les compléter pour un répertoire particulier. Protéger le repertoire cgi-bin par .htaccess
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
RewriteEngine on
AllowOverride All
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from 127.0.0.1
</Directory>

</VirtualHost>


Voila vous avez un vhost apache2.4 fonctionnel avec protection du répertoire cgi-bin par .htaccess

Maintenant il faut activer le mod_rewrite pour que le .htaccess soit interprèté.

$ sudo a2enmod rewrite
$ sudo /etc/init/d/apache2 restart

Il faut maintenant ajouter les fichiers .htaccess et .htpasswd dans le répertoire à protéger ci dessus c'est /home/sites/public_html/cgi-bin

Pour générer votre fichier .htpasswd dirigez vous vers cette page web : http://www.infowebmaster.fr/outils/crypter-htpasswd.php

Voici le contenu du fichier .htaccess (adaptez le chemin du fichier .htpasswd)

AuthType Basic
AuthName "My Protected Area"
AuthUserFile /home/sites/hit-fr.net/public_html/cgi-bin/.htpasswd
Require valid-user

Voila ça devrait fonctionner :-)