Activer Htaccess et le module rewrite sur votre serveur
Je viens d’installer un nouveau serveur sur ma Virtual Box et je souhaite ajouter un fichier .htaccess dans un de mes projets.
Fichier .htaccess
RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
Ce fichier réalise des réécriture d’url à la volée.
Première problème, ça n’a pas l’air de fonctionner : je modifie mon url et le navigateur me renvoie des erreurs 404.
Pour activer les htaccess, voici la marche à suivre :
1 Modifier le fichier de conf de apache2 :
Shell
vi /etc/apache2/sites-available/000-default
remplacer
Fichier default
<Directory /var/www/> Options Indexes FollowSymLinks MultiViews AllowOverride None # par All Order allow,deny allow from all </Directory>
Relancer apache2 :
Shell
/etc/init.d/apache2 restart
Activer le mode Rewrite de Apache :
Puis, j’ai le message d’erreur suivant lorsque je recharge ma page :
Comme demandé dans la page, je consulte mon fichier error.log qui se trouve dans le dossier suivant : /var/log/apache2
Shell
tail /var/log/apache2/error.log
[alert] [client 192.168.1.3] /var/www/150523Router/.htaccess: Invalid command 'RewriteEngine', perhaps misspelled or defined by a module not included in the server configuration
Visiblement, le mod_rewrite n’a pas été activé …
Pour activer le module rewrite de apache, j’utilise la ligne de commande suivante :
Shell
a2enmod rewrite
Relancer apache2 :
Shell
/etc/init.d/apache2 restart
ou
service apache2 restart
Voilà tout fonctionne désormais !!