htaccess重写仅适用于域

时间:2016-02-07 11:57:04

标签: apache .htaccess mod-rewrite

我试图删除子域名" m"从所有页面,但我尝试它只适用于主域..

我试过了 -

#for all requests to www.example.com
RewriteCond %{HTTP_HOST} ^\.m\.pcgraph\.co\.il$

#redirect them to new-example
RewriteRule (.*) http://www.pcgraph.co.il/$1 [R=301,L]

而这 -

RewriteCond %{HTTP_HOST} ^m\.pcgraph\.co\.il [NC]
RewriteRule (.*)$ http://www.pcgraph.co.il/$1 [L,R=301]

还有更多的变化,但我不断得到相同的结果..

如果我尝试进入m.pcgraph.co.il它工作正常,但当我尝试去内页时," m"子域名仍然存在.. E.g- m.pcgraph.co.il/something/没有重写

1 个答案:

答案 0 :(得分:1)

尝试在$变量的末尾添加%{HTTP_HOST}

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

那应该绝对有用。 (我已经在我的最后测试过了。)

如果没有,则可能与其他mod_rewrite指令发生冲突(在相同或其他.htaccess文件中)。