我正在使用Vagrant建立一个Wordpress开发虚拟机。当我选择permalinks(postname)时,文章中的页面不会加载。然而,当我选择标准链接(即页面id)时,一切正常。我已经使用了服务PuPHPet来构建VM。
可以找到我的设置here
我正在使用Wordpress 3.9.1和Apache2,我已启用mod\\u 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
我的网站virtualhost文件(
/var/www/svisa/
) 可以找到
here.
从主机,我通过地址浏览到网站:http://wpdev-vm/svisa/
哪里wpdev-vm
是vm的名称。
有人知道我缺少什么让permalinks工作吗?
最合适的回答,由SO网友:Nazeem 整理而成
我自己解决了这个问题。
在默认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>
之后,permalinks开始工作。