J'exécute une sauvegarde de mon site Web sur Ubuntu 12.10 (Apache + mysql). Je peux voir correctement l'administrateur et la page d'accueil, mais les liens permanents ne fonctionnent pas (les URL comme celle-ci échouent: localhost/page /.../).
Ce que j'ai fait jusqu'à maintenant c'est:
1) Fichier créé .htaccess via settings-> permaliens avec le contenu:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
2) Ajout du module Apache de réécriture avec:
Sudo a2enmod rewrite
3) Modifié dans la ligne dont le fichier est activé pour les sites/000-default:
AllowOverride None
à:
AllowOverride All
4) Enfin relancé Apache avec:
Sudo service Apache2 restart
Quoi qu'il en soit, je suis toujours "non trouvé" lorsque je visite un lien permanent.
Comment puis-je faire fonctionner les permaliens?
Vérifiez dans un phpinfo () que le mod_rewrite fonctionne. Actualisez également les permaliens dans le backend. Les liens permanents fonctionnent bien, également sur Ubuntu 12.10.
Si vous avez déjà exécuté la commande Sudo a2enmod rewrite mais que votre URL Rewrite ne fonctionne pas. Pour que les fichiers .htaccess fonctionnent comme prévu, vous devez éditer ce fichier:
Étape 1 : Sudo vi /etc/Apache2/sites-available/default
Étape 2 : Recherchez une section qui ressemble à ceci:
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
# <Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
# Uncomment this directive is you want to see Apache2's
# default start page (in /Apache2-default) when you go to /
#RedirectMatch ^/$ /Apache2-default/
</Directory>
# Uncomment this directive is you want to see Apache2's
# default start page (in /Apache2-default) when you go to /
#RedirectMatch ^/$ /Apache2-default/
</Directory>
Vous devez modifier la ligne contenant AllowOverride None pour lire AllowOverride All.
step3 : Sudo /etc/init.d/Apache2 reload