固定链接不适用于 Vagrant
-
09-12-2019 - |
题
我正在使用 Vagrant 构建一个小型 Wordpress 开发虚拟机。当我选择永久链接(帖子名)时,不会加载文章中的页面。但是,当我选择标准链接(即页面 id)时,一切都运行良好。我使用 PuPHPet 服务来构建虚拟机。
我的设置可以找到 这里
我正在使用WordPress 3.9.1和Apache2已启用Mod_rewrite执行:
a2enmod rewrite
我的 Wordpress .htaccess 文件如下:
# 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
它具有以下权限和所有权:
-rw-rw-rw- 1 vagrant www-data 248 May 30 14:52 .htaccess
我的网站虚拟主机文件(/var/www/svisa/
) 可以被找寻到 这里.
从我的主机上,我通过地址浏览到该站点: http://wpdev-vm/svisa/
在哪里 wpdev-vm
是虚拟机的名称。
有谁知道我缺少什么才能使永久链接正常工作?
解决方案
我自己解决了这个问题。
在默认的 apache 配置下, /etc/apache2/sites-enabled
, ,我的叫做 15-default.conf
这是在文档根目录下声明的:
<Directory "/var/www">
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory>
我必须改变 AllowOverride None
到 AllowOverride All
. 。因此你会得到以下内容:
<Directory "/var/www">
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
Allow from all
</Directory>
之后,永久链接开始工作。
其他提示
网络上有足够的信息介绍如何获取与 Apache2 一起使用的 .htaccess 文件。但具体与 流浪汉, ,您需要确保在您的 Apache 中实现了所需的设置 客人 机器。这对于其他人来说可能是显而易见的,但我浪费了主机上不断变化的设置,并且无法弄清楚为什么它不起作用。