我一直在调整mod_rewrite已经有一段时间了,但是我已经得到了最好的帮助。希望这里的任何人能够对我的问题有所了解。
我正在尝试自我托管wordpress,当我在网站的.htaccess文件中将mod_rewrite设置为off时,它工作得很好。但如果我把它打开它就会给我一个禁止的错误。日志显示:
选项FollowSymLinks或SymLinksIfOwnerMatch关闭意味着禁止使用RewriteRule指令:/c/blog/wp-admin/index.php,referer:http://xxx.xxx.xxx.xxx/blog/wp-admin/options-permalink.php
.htaccess包含
<IfModule mod_security.c>
SecFilterEngine Off
SecFilterScanPOST Off
</IfModule>
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /blog/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /blog/index.php [L]
</IfModule>
# END WordPress
提前致谢!
答案 0 :(得分:1)
检查以确保您的Apache用户(wwwuser
或webserv
?)可以读取根文件夹中的.htaccess
。
为了使这个变得非常容易,您可以让文件具有全局可读性和可写性(chmod 777
),但请确保以便在以后将其恢复为更加理智的755。< / p>
如果您发现这是您的错误,请检查user:group
上的.htaccess
(ls -la .htaccess
应该做的伎俩),并确保它与您的其他文件相匹配。
答案 1 :(得分:0)
看起来你的Apache配置中有些东西禁止&#34; RewriteRule&#34;线?日志输出表明您可能需要打开FollowSymLinks或SymLinksIfOwnerMatch
答案 2 :(得分:0)
显然,在readynas上有一个托管wordpress的怪癖,其中.htaccess文件只是让它成为b0rk。解决方案是在/etc/frontview/apache/Shares.conf中将选项索引更改为选项全部