【问题标题】:Using .htaccess file to redirect to a subdomain使用 .htaccess 文件重定向到子域
【发布时间】:2012-05-19 15:32:40
【问题描述】:

在我的根文件夹中,我有一个主目录。我希望将 mydomain.com 或 www.mydomain.com 的所有请求转发到 home.mydomain.com。在我的 cPanel 中,我已经将子域 home.mydomain.com 设置为指向 mydomain.com/home。

这是我目前在 .htaccess 文件中的内容:

RewriteEngine On
Options +SymLinksIfOwnerMatch
RewriteRule ^(.*)$ \/home\/$1 [L]

这成功地将 mydomain.com 和 www.mydomain.com 分别转发到 mydomain.com/home 或 www.mydomain.com/home。但是 home.mydomain.com/filename 给了我一个内部服务器错误,而不是在 mydomain.com/home/filename 上提供文件。

【问题讨论】:

    标签: apache .htaccess mod-rewrite


    【解决方案1】:

    我不确定我是否理解确切的要求,但您似乎想在您的子域 home.mydomain.com 已经重写所有 (www.)mydomain.com 对 /home 目录的请求> 指向该目录,因此应该免除该重写指令。如果由于某种原因 (www.)mydomain.com 也无法设置为指向 /home,则您需要重写条件,例如

    RewriteEngine On
    Options +SymLinksIfOwnerMatch
    RewriteCond %{HTTP_HOST} ^(www\.)?mydomain\.com$ [NC]
    RewriteRule ^(.*)$ /home/$1 [L]
    

    我还删除了不需要的反斜杠。您可以使用htaccess tester在线轻松检查重写规则。

    【讨论】:

    • 感谢您提供非常有用的链接!
    猜你喜欢
    • 2012-01-09
    • 1970-01-01
    • 2017-03-05
    • 1970-01-01
    • 2012-11-23
    • 2016-02-08
    • 2014-08-19
    • 2023-03-09
    • 1970-01-01
    相关资源
    最近更新 更多