使用htaccess文件将多个URL重定向到子文件夹

时间:2014-04-29 11:28:38

标签: .htaccess mod-rewrite redirect

我想要实现的是将我的域名www重定向到我的应用程序中的子文件夹。

例:
我有www.mysite.in。当用户点击www.mysite.in/feature/index.php或仅www.mysite.in时,我想将用户重定向到mysite.in,但我无法取得成功。我要么最终了在循环中或重定向不起作用。
这就是我试过的

     RewriteCond %{HTTP_HOST} ^mysite.in
     RewriteRule ^(.*)$ http://www.mysite.in/feature/index.php$1 [R=301,L]


     RewriteCond %{HTTP_HOST} ^www\.mysite\.in [NC] 
     RewriteRule ^(.*)$ http://www.mysite.in/feature/index.php$1 [R=301,L]

以上以循环结束。

     Redirect 301 mysite.in http://www.mysite.in/feature/index.php
     Redirect 301 http://www.mysite.in http://www.mysite.in/feature/index.php

在上述情况下,第一次重定向有效,第二次失败 我该如何解决这个问题。?

1 个答案:

答案 0 :(得分:1)

您不需要2个规则,因为它们都会重定向到同一个网址。 有一个循环,因为你没有测试你所在的文件夹.HTTP_HOST上的RewriteCond是无用的,因为你总是在mysite.in或www.mysite.in(如果没有留下它)。 试试这个:

RewriteCond %{REQUEST_URI} !^/feature/ [NC]
RewriteRule ^(.*)$ http://www.mysite.in/feature/index.php$1 [R=301,L]