子域的htaccess重写规则导致重定向循环

时间:2015-02-04 04:27:07

标签: .htaccess loops mod-rewrite redirect subdomain

以下是我的htaccess配置

    RewriteEngine On

    # if the domain starts with "apply."
    # i.e. apply.domain.com
    # redirect to application URI
    RewriteCond %{HTTP_HOST} ^apply\. [NC]
    RewriteRule !^formwizard /formwizard/apply [R=301,L,NC]

我试过了,当我转到http://apply.domain.com/时,它成功重定向到http://apply.domain.com/formwizard/apply。 我的问题是,一旦重定向到该URI,它就会进入重定向循环。 任何人都可以请帮助我找到我的配置有什么问题?

背景 我有3个子域: www.domain.com apply.domain.com admin.domain.com 。它都引用了相同的源代码,只是由我的htaccess管理。 一旦该人去apply.domain.com,它应该被重定向到应用程序页面/ formwizard / apply。

PS。我不想太依赖后端代码,因为我认为这是服务器配置问题。

提前致谢!

1 个答案:

答案 0 :(得分:1)

如果有更多规则,则此规则可能会受到影响。将此规则修改为:

RewriteCond %{HTTP_HOST} ^apply\. [NC]
RewriteCond %{THE_REQUEST} !/formwizard/ [NC]
RewriteRule ^ /formwizard/apply [R=301,L,NC]

另请确保这是RewriteEngine On行以下的第一条规则。