删除www。仅在目录中

时间:2011-07-10 16:29:15

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

我正在尝试删除名为 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]

1 个答案:

答案 0 :(得分:2)

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

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