此时我服务器上的每个站点都在域“mydomain.com”或“subdomain.mydomain.com”上,我会根据用于访问站点的子域进行各种重写。
我现在要做的是,不是从我的域或子域发送任何请求到脚本处理......听起来很简单,但我无法让它工作..
这就是我所拥有的:
RewriteEngine on
RewriteCond %{ENV:Rewrite-Done} !^Yes$
RewriteCond %{HTTP_HOST} !^(.*)\.mydomain\.com
RewriteRule (.*) /_testing/htaccess/off.php?$1
它正确地允许我的域或子域上的任何流量通过,但在重写时会出现500内部服务器错误。我错过了一些明显的东西吗?
答案 0 :(得分:0)
尝试此规则:
RewriteCond %{HTTP_HOST} !^(.+\.)?example\.com$
RewriteCond $1 !=/_testing/htaccess/off.php
RewriteRule (.*) /_testing/htaccess/off.php?$1
答案 1 :(得分:0)
事实证明,htaccess规则无限期地重定向。这是因为我的处理程序脚本位于/ htaccess /目录中。
我已将处理程序文件移到另一个位置,现在可以使用了:
RewriteEngine on
RewriteCond %{ENV:Rewrite-Done} !^Yes$
RewriteCond %{HTTP_HOST} !^(.+\.)?example\.com$
RewriteRule (.*) /_testing/get.php?http_host=%{HTTP_HOST}