我有以下htaccess将用户从www.mysite.com或http://mysite.com重定向到http://mysite.com/subfolder
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} !^www.mysite.com$ [OR]
RewriteCond %{HTTP_HOST} !^mysite.com$
RewriteRule ^(.*)$ http://mysite.com/subfolder/$1 [L,R=301]
它运行完美,但由于某种原因它重定向到http://www.mysite.com/subfolder/(我需要删除www),子文件夹只是一个常规的Wordpress安装,它有默认的.htaccess文件,我尝试添加以下内容:
# Redirect
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_URI} !^/subfolder/
RewriteCond %{HTTP_HOST} ^www\.
RewriteRule (.*) http://mysite.com/subfolder/$1 [R=301,L]
</IfModule>
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /subfolder
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /subfolder/index.php [L]
</IfModule>
# END WordPress
要从网址中删除www,但它给我一个错误的重定向错误,我对这个.htaccess配置真的很新,所以我不知道我做错了什么。
任何人都可以帮助我吗?提前谢谢!
答案 0 :(得分:1)
当然,如果用户已被重定向,则不应重定向用户。
要实现此目的,您需要RewriteCond
来检查您是否已经在子文件夹中。
示例:
RewriteCond %{REQUEST_URI} !^/subfolder/