Par défaut, Apache interdit l'utilisation d'un fichier .htaccess pour appliquer des règles de réécriture, donc
Étape 1 - Activation de mod_rewrite (s'il n'est pas activé)
Tout d'abord, nous devons activer mod_rewrite. Il est disponible mais pas activé avec une installation Apache 2 propre.
$ sudo a2enmod rewrite
Cela activera le module ou vous avertira que le module est déjà activé. Pour appliquer ces modifications, redémarrez Apache.
$ sudo systemctl restart apache2
mod_rewrite est maintenant entièrement activé. Dans la prochaine étape, nous allons configurer un fichier .htaccess que nous utiliserons pour définir les règles de réécriture pour les redirections.
Étape 2 - Configuration de .htaccess
Ouvrez le fichier de configuration Apache par défaut à l'aide de nano ou de votre éditeur de texte préféré.
$ sudo nano /etc/apache2/sites-available/000-default.conf
Dans ce fichier, vous trouverez un bloc commençant sur la première ligne. À l'intérieur de ce bloc, ajoutez le nouveau bloc suivant pour que votre fichier de configuration ressemble à ce qui suit. Assurez-vous que tous les blocs sont correctement indentés.
/etc/apache2/sites-available/000-default.conf
<VirtualHost *:80>
<Directory /var/www/html>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Require all granted
</Directory>
. . .
</VirtualHost>
Enregistrez et fermez le fichier. Pour appliquer ces modifications, redémarrez Apache.
$ sudo systemctl restart apache2
Terminé. Votre .htacess devrait fonctionner.
Ce lien peut en fait aider quelqu'un https://www.digitalocean.com/community/tutorials/how-to-rewrite-urls-with-mod_rewrite-for-apache-on-ubuntu-16-04
400 Bad Request
erreur à/var/www/html/404.php
?