0

我有这个 URL http://mysite.com/blog/,我想把它转换成http://www.mysite.com/blog/

我在尝试:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^mysite\.com/blog/ [NC]
RewriteRule ^(.*)$ http://www.mysite.com/blog/ [L,R=301]

我尝试将它先放在根目录中,然后放在博客目录中,但没有奏效。

还有一个条件。我不希望更改任何其他 url,因为它们已经从http://www.mysite.com/to修改过http://www.shop.mysite.com/。我只想添加带有的网址,/blog并且www博客是在 wordpress 中开发的。

任何帮助,将不胜感激。

这是我尝试过的另一种解决方案,它会导致重定向循环

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_HOST} !^$
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteCond %{HTTPS}s ^on(s)|
RewriteRule ^ http%1://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

RewriteBase /blog/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /blog/index.php [L]
</IfModule>
4

2 回答 2

0

这应该工作

RewriteEngine On
RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301]
于 2013-06-12T05:58:06.967 回答
0

事实证明,第二种解决方案确实有效。您只需要将 htaccess 放在根目录下。所以我的问题的最终解决方案是:

RewriteEngine On
RewriteCond %{HTTP_HOST} !^$
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteCond %{HTTPS}s ^on(s)|
RewriteRule ^ http%1://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
于 2013-06-12T07:24:45.077 回答