我正在为一个使用以下规则的项目使用htaccess文件:
RewriteEngine on
RewriteRule ^page/([^/.]+)/?$ page.php?page=$1 [L]
RewriteRule ^([^/.]+)/?/([^/.]+)/?$ page.php?theme=$1&pg=$2 [L]
RewriteRule ^([^/.]+)/?$ page.php?theme=$1&pg=$1 [L]
RewriteRule ^([^/.]+)/?/$ page.php?theme=$1&pg=$1 [L]
这有效地将CCD_ 1改变为CCD_。
我遇到的问题是,我还在这个项目上使用wordpress安装,安装在domain.com/blog
下。
因此,访问domain.com/blog
是对domain.com/page.php?theme=blog
的重写,破坏了wordpress安装。
有没有一种方法可以设置重写规则的异常,以便domain.com/blog
正确加载wp博客?
尝试按以下排除/blog
的处理
RewriteEngine on
RewriteBase /
#if its blog, do nothing
RewriteRule ^blog/ - [L,NC]
#rest of your rules go here
在顶部添加底部
RewriteBase /
显而易见的答案是在这之后添加一个RewriteRule ^blog/ - [L]
规则,但我不明白你的Q是Wordpress通常会在domain.com/theme/page
0子目录中创建自己的优化.htaccess
。仅凭DOCROOT .htaccess
文件中的规则正在触发这一事实,告诉我这并不存在,因为如果它存在,那么将对/blog/*URI执行此操作。你看过WP htaccess Control插件吗?