我已经设置了一个 wordpress 网站,在该网站上我启用了永久链接以使用 seo 友好的 url 打开页面。所以它改变了我的 .htaccess 如下
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /brt_blog/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /my_blog/index.php [L]
</IfModule>
# END WordPress
但是现在当我尝试访问本地主机上的网站时,它会抛出错误
Forbidden
You don't have permission to access /my_blog/ on this server.
我试图查看 apache 错误日志并发现了这个
[Thu Sep 19 22:33:29 2013] [error] [client 127.0.0.1] Options FollowSymLinks or SymLinksIfOwnerMatch is off which implies that RewriteRule directive is forbidden: D:/www/brt_blog/, referer: http://localhost/
因此,为了解决这个问题,我在# BEGIN Wordpress之前添加了以下行
Options FollowSymLinks
这得到了修复,网站在 seo 友好的 url 上运行良好。
但主要问题是,我的系统上的 wamp 下的 apache 上似乎存在一些错误配置或某种安全设置。每次如果我使用具有此代码的 htaccess 文件创建任何站点,它都会引发相同的403 Forbidden错误。
<IfModule mod_rewrite.c>
RewriteEngine On
.... my rewrite rules here...
</IfModule>
这是我在 apache 上的 httpd.conf 文件的链接,以防万一有人需要检查它。 http://pastebin.com/LFxNTsnR