繁体   English   中英

htaccess mod_rewrite子域从主域继承规则

[英]htaccess mod_rewrite subdomains inheriting rules from main domain

我想重定向m.example.comexample.com/index.php?type=mobile同时继承我已经书面规则example.com ...

假设我已经定义了N条规则,如下所示:

^view/([A-z]+) index.php?view=$1
^delete/([A-z]+) index.php?delete=$1
^page/view/([A-z]+)/([0-9]+) index.php?view=$1&page=$2
^page/delete/([A-z]+)/([0-9]+) index.php?delete=$1&page=$2

不必重写m.example.com子域的每个规则, m.example.com可以继承相同的规则,但是子域标志为type=mobile 基本上,不必为m子域文件夹中的.htaccess添加N行。

^view/([A-z]+) index.php?view=$1&type=mobile
^delete/([A-z]+) index.php?delete=$1&type=mobile
^page/view/([A-z]+)/([0-9]+) index.php?view=$1&page=$2&type=mobile
^page/delete/([A-z]+)/([0-9]+) index.php?delete=$1&page=$2&type=mobile

您可以简单地在PHP脚本中检查HTTP_HOST

$mobile = isset($_SERVER['HTTP_HOST']) && strtolower($_SERVER['HTTP_HOST']) === 'm.example.com';

因此,尝试一些新的东西:

RewriteCond %{HTTP_HOST} ^([^.]+)\.example.com [NC]
RewriteRule ^view/([A-z]+) index.php?view=$1&type=%1

那是你在找什么吗?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM