【问题标题】:Remove www. in directory only删除万维网。仅在目录中
【发布时间】:2011-07-10 16:29:15
【问题描述】:

我正在尝试删除名为 dir 的单个目录的 www.(例如)。我需要能够从该目录中的.htaccess 文件执行此操作。 (我没有 root 访问权限。)知道如何进行这项工作吗?

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

更新——解决方案:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^(.*)$ http://%1/dir/$1 [R=301,L]

【问题讨论】:

    标签: .htaccess redirect url-rewriting no-www


    【解决方案1】:

    HTTP_HOST 将不包含您需要与重写规则本身匹配的访问路径:

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

    【讨论】:

    • 这很有意义——谢谢!我仍然没有让它工作......更新问题。
    • 知道了!因为我在 /dir/ 中使用 .htaccess,所以在 RewriteRule 的第一部分不需要“dir”(就像在根级别 .htaccess 中一样)。再次感谢:)
    猜你喜欢
    • 1970-01-01
    • 2013-04-22
    • 2015-01-09
    • 2012-01-31
    • 2010-11-20
    • 1970-01-01
    • 1970-01-01
    • 2013-08-16
    • 1970-01-01
    相关资源
    最近更新 更多