具有单个子目录的域别名的htaccess重写规则

时间:2014-01-25 12:58:34

标签: .htaccess mod-rewrite

我的网站有一个很大的.htaccess文件来控制别名和子目录

e.g。 mysite / townname设置为按如下方式加载特定内容(vbulletin) - 用于处理是否结束的2个条目正常工作

RewriteRule ^([^/.]+)/$ content.php?r=157&town=$1&newtownidmethod=1&showregion=1 [NC]
RewriteRule ^([^/.]+)$ content.php?r=157&town=$1&newtownidmethod=1&showregion=1 [NC]

如果mainsite / subdir1 / subdir2

,以上工作适用于mainsite / subdir1并且不会调用

但如果使用某些别名域,我想加载不同的内容,例如content.php?r = 9,但仅限于subdir1。 subdir1实际上是城镇名称,其中有650个。

真实的例子

  • www.qlocal.co.uk/southport将为带有新闻的主页(content.php = 157)加载content.php = 157,如上面的重写
  • www.movingdiy.co.uk/southport - 我想加载一个带有待售物业的不同主页(content.php = 9)

我需要检测(重写我假设)使用网站movingdiy.co.uk并且如果网址中只指定了一个(并且只有一个)子网,则加载不同的内容。

1 个答案:

答案 0 :(得分:0)

您可以遵守以下规则:

RewriteCond %{HTTP_HOST} !^(www\.)?movingdiy\.co\.uk$ [NC]
RewriteRule ^([^/.]+)/?$ content.php?r=157&town=$1&newtownidmethod=1&showregion=1 [L,QSA]

RewriteCond %{HTTP_HOST} ^(www\.)?movingdiy\.co\.uk$ [NC]
RewriteRule ^([^/.]+)/?$ content.php?r=9&town=$1&newtownidmethod=1&showregion=1 [L,QSA]