问题从非www URL重定向到www URL

时间:2014-10-06 15:05:59

标签: .htaccess url redirect cakephp-1.3

您好在我们的网站上,我们遇到的问题就像我们输入没有www的网址一样。 example.com/xyz在这种情况下,重定向后会转换为www.example.com/?url=xyz,但应该重定向到以下内容:www.example.com/xyz

所以我们得到额外的?url= in URL

我们在htaccess文件中使用代码将非www url重定向到www。 htaccess文件中的重定向代码:

    <IfModule mod_rewrite.c>
   RewriteEngine on
   RewriteRule    ^$ app/webroot/    [L]
   RewriteRule    (.*) app/webroot/$1 [L]
  </IfModule>

我们也试过这段代码但不行:

 <IfModule mod_rewrite.c>

   RewriteEngine on
   RewriteRule    ^$ app/webroot/    [L]
   RewriteRule    (.*) app/webroot/$1 [L]
   RewriteCond %{HTTP_HOST} ^example.com [NC]
    RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301]
</IfModule>

1 个答案:

答案 0 :(得分:0)

尝试在路由规则之前放置重定向规则

<IfModule mod_rewrite.c>

   RewriteEngine on

   RewriteCond %{HTTP_HOST} ^example.com [NC]
   RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301]

   RewriteRule    ^$ app/webroot/    [L]
   RewriteRule    (.*) app/webroot/$1 [L]

</IfModule>