我遇到了重写问题。
我的/ blog目录中安装了Wordpress,但我希望Wordpress页面出现在博客目录之外。
所以,在我的根.htaccess中我添加了一行:(前三行已经存在,用于将所有内容重定向到“www”
RewriteEngine on
RewriteCond %{HTTP_HOST} ^tooboss.com$
RewriteRule ^(.*)$ "http\:\/\/www\.tooboss\.com/$1" [R=301,L]
RewriteRule ^(.*)$ "/blog/$1" [L]
然后我将Wordpress中的显示网址更改为我的根网址,并将固定链接结构更改为“/ blog /”,因此我的帖子仍然显示在博客目录中。
一切正常,但我无法通过www.tooboss.com/blog重定向到www.tooboss.com。相反,它会抛出404。
有什么想法吗?
供参考,这是博客目录的.htaccess文件“
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /blog/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /blog/index.php [L]
</IfModule>
# END WordPress
我错过了一些明显的东西吗?我觉得它被夹在2个htaccess文件之间,但我不知道该怎么做才能修复它。
由于
答案 0 :(得分:1)
这不是规则:
RewriteRule ^(.*)$ "/blog/$1" [L]
导致www.tooboss.com/blog
被发送到www.tooboss.com/blog/blog
?
我想你想要:
RewriteCond %{REQUEST_FILENAME} !^/blog/$
RewriteRule ^(.*)$ "/blog/$1" [L]
我对.htaccess很新,所以我可能会离开这里。
答案 1 :(得分:0)
回应你对seth答案的评论,试试这个:
RewriteRule ^/blog/?$ / [R=301,L]
RewriteRule ^(.*)$ /blog/$1 [L]
答案 2 :(得分:0)
I figured it out非常烦人的问题。我能够在不将我的博客移动到另一个命名目录的情况下解决问题,但它需要改变我不想做的Wordpress PHP。如果构建Wordpress来处理永久链接结构中的静态链接,我就不需要移动安装