【问题标题】:Need help in htaccess redirect in a php project在 php 项目中需要 htaccess 重定向方面的帮助
【发布时间】:2014-02-12 13:43:36
【问题描述】:

我想将 mydomain.com 和 www.mydomain.com 重定向到 http://www.mydomain.com/index

我在 htaccess 文件中使用该代码但无法正常工作

RewriteCond %{HTTP_HOST} ^mydomain.com
RewriteCond %{HTTP_HOST} ^www.mydomain.com

RewriteRule ^(.*)$ http://www.mydomain.com/index [r=301,L]

我也试过了

RewriteCond %{HTTP_HOST} ^mydomain.com
RewriteRule ^(.*)$ http://www.mydomain.com/index [r=301,L]

RewriteCond %{HTTP_HOST} ^www.mydomain.com
RewriteRule ^(.*)$ http://www.mydomain.com/index [r=301,L]

但不工作所以请帮助我

【问题讨论】:

    标签: php apache .htaccess mod-rewrite redirect


    【解决方案1】:

    你错过了两件事。

    1. 您可以在您的条件中使用[OR] 标志,或者简单地组合正则表达式
    2. 您正在导致重定向循环,因此您需要重定向/index

      RewriteCond %{HTTP_HOST} ^(www.)?mydomain.com$ [NC] RewriteCond %{REQUEST_URI} !^/index 重写规则 ^(.*)$ http://www.mydomain.com/index [r=301,L]

    或者,如果您只想重定向 root 的请求:

    RewriteCond %{HTTP_HOST} ^(www\.)?mydomain.com$ [NC]
    RewriteRule ^$ http://www.mydomain.com/index [r=301,L]
    

    【讨论】:

    • 你是对的。我正在使用重定向循环。你已经给出了正确的答案。我喜欢。非常感谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多