web-dev-qa-db-fra.com

Permalinks ne fonctionne pas avec Vagrant

J'utilise Vagrant pour construire une petite machine virtuelle de développement Wordpress. Lorsque je sélectionne des permaliens (postname), la page d'un article ne se charge pas. Cependant, lorsque je sélectionne le lien standard (c'est-à-dire l'ID de la page), tout fonctionne correctement. J'ai utilisé le service PuPHPet pour construire la machine virtuelle.

Mes paramètres peuvent être trouvés ici

J'utilise Wordpress 3.9.1 et Apache2, j'ai activé mod_rewrite en cours d'exécution:

a2enmod rewrite

Et mon fichier .htaccess de Wordpress est le suivant:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /svisa/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /svisa/index.php [L]
</IfModule>

# END WordPress

il possède les autorisations et la propriété suivantes:

-rw-rw-rw- 1 vagrant www-data   248 May 30 14:52 .htaccess

Mon fichier virtualhost pour le site (/var/www/svisa/) peut être trouvé ici .

à partir de mon ordinateur hôte, je navigue sur le site via l’adresse suivante: http://wpdev-vm/svisa/wpdev-vm est le nom du vm.

Est-ce que quelqu'un sait ce qui me manque pour que les permaliens fonctionnent?

1
Nazeem

J'ai résolu le problème moi-même.

Dans la configuration Apache par défaut, sous /etc/Apache2/sites-enabled, la mienne s'appelle 15-default.conf

Cela a été déclaré sous la racine du document:

   <Directory "/var/www">
     Options Indexes FollowSymLinks MultiViews
     AllowOverride None
     Order allow,deny
     Allow from all
   </Directory>

J'ai dû changer AllowOverride None en AllowOverride All. Ainsi, vous obtiendrez ce qui suit:

   <Directory "/var/www">
     Options Indexes FollowSymLinks MultiViews
     AllowOverride All
     Order allow,deny
     Allow from all
   </Directory>

Après cela, les permaliens ont commencé à fonctionner.

0
Nazeem

Il existe suffisamment d’informations sur le Web pour savoir comment obtenir des fichiers .htaccess fonctionnant avec Apache2. Mais plus particulièrement avec Vagrant , vous devez vous assurer que les paramètres requis sont implémentés dans Apache sur votre invité machine. Cela peut sembler évident à tout le monde, mais j’ai perdu un changement de paramètres sur mon hôte et je ne pouvais pas comprendre pourquoi cela ne fonctionnait pas.

0
anthonygore