Permalinks funktionieren nicht mit Vagrant
-
09-12-2019 - |
Frage
Ich benutze Vagrant, um eine kleine Wordpress-Entwicklungs-VM aufzubauen.Wenn ich Permalinks (Postname) auswähle, wird die Seite aus einem Artikel nicht geladen.Wenn ich jedoch den Standardlink (dh die Seiten-ID) auswähle, funktioniert alles gut.Ich habe den Dienst PuPHPet verwendet, um die VM zu erstellen.
Meine Einstellungen können gefunden werden hier
Ich benutze Wordpress 3.9.1 und Apache2 Ich habe aktiviert, dass mod_rewrite ausgeführt wird:
a2enmod rewrite
Und meine .die htaccess-Datei von Wordpress lautet wie folgt:
# 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
es hat die folgenden Berechtigungen und Eigentumsrechte:
-rw-rw-rw- 1 vagrant www-data 248 May 30 14:52 .htaccess
Meine Virtualhost-Datei für die Site (/var/www/svisa/
) gefunden werden kann hier.
von meinem Hostcomputer aus navigiere ich über die Adresse zur Site: http://wpdev-vm/svisa/
wo wpdev-vm
ist der Name der VM.
Weiß jemand, was mir fehlt, damit die Permalinks funktionieren?
Lösung
Ich habe das Problem selbst gelöst.
In der Standard-Apache-Konfiguration unter /etc/apache2/sites-enabled
, wo meins heißt 15-default.conf
Dies wurde unter dem Dokumentstamm deklariert:
<Directory "/var/www">
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory>
Ich musste mich umziehen AllowOverride None
zu AllowOverride All
.Somit erhalten Sie Folgendes:
<Directory "/var/www">
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
Allow from all
</Directory>
Danach begannen die Permalinks zu funktionieren.
Andere Tipps
Es gibt ausreichend Informationen zum Web, um .htaccess-Dateien mit Apache2 zu erhalten.Insbesondere mit vagrant müssen Sie sicherstellen, dass die erforderlichen Einstellungen in Apache auf Ihrem Guest -Maschine implementiert werden.Das könnte für alle anderen offensichtlich sein, aber ich verschwendete ein Ändern von Einstellungen auf meinem Gastgeber und konnte nicht herausfinden, warum es nicht funktionierte.