我正在尝试编写将转换的htaccess文件
到
http://my-tld.com/file.php?var=subdomain
注意tld中的连字符
这是我正在使用的htaccess
Options +FollowSymLinks
Options -Indexes
RewriteEngine On
# Rewrite sub domains.
RewriteCond %{ENV:REDIRECT_STATUS} ^$
RewriteCond %{HTTP_HOST} !^www\.my-tld\.com$ [NC]
RewriteCond %{HTTP_HOST} ^(www\.)?([^\.]+)\.my-tld\.com$ [NC]
RewriteRule ^(.*)$ /file.php?var=%2 [QSA,L]
实际上,我在同一台服务器上为另一个域使用相同的代码并且它运行良好,但它不适用于此域,我猜这个域中的连字符是问题所在。< / p>
有什么建议吗?
答案 0 :(得分:0)
对我来说,这些规则使服务器返回“内部服务器错误”,错误日志将打印
由于可能,请求超出了10个内部重定向的限制 配置错误
我不知道为什么它适用于另一个域,如你所说,但只是尝试在最终的RewriteRule之前添加这个条件:
RewriteCond %{QUERY_STRING} !var=
让它传递url alreay get param“var”。