我有点卡在这里。我需要得到一些关于这个子域情况的帮助。
我需要将 http://dynamicsubdomain.example.com/
重定向到
的 http://dynamicsubdomain.example.com/account/welcome.html
即可。
我该怎么做呢?我尝试了几件事,但都没有结果。主要问题是我无法从mod_rewrite的%{HTTP_POST}
字符串中获取输入的动态子域。
另一个问题是它正在创造无限循环。因此仅需要重定向这些条件,而不是像http://dynamicsubdomain.example.com/test/page.html
这样的网址时。因为它会创造无限循环。这只是网站的起始页面。
我希望你们都能帮助我,这是我项目中最后一个但重要的事情之一。
提前致谢!
答案 0 :(得分:1)
URL redirection维基页面上有几个选项。例如,如何在根目录中删除重定向到目标的index.php?
header("Location: http://dynamicsubdomain.example.com/account/welcome.html");
答案 1 :(得分:1)
如果您停留在同一个域中,并且只是重定向到不同的路径,为什么域名如此重要?
Apache中的UseCanonical设置可能会对此产生影响,但它默认为on,这会保留请求中指定的主机和端口。
RewriteRule ^/$ /account/welcome.html [R,L]
答案 2 :(得分:0)
嘿伙计们,感谢您的支持/帮助,但我自己找到了解决方案。比我想象的要快:)
这就是诀窍,我希望我可以帮助这个人:
RewriteCond %{REQUEST_URI} ^/$ [NC]
RewriteCond %{HTTP_HOST} ^([A-Za-z0-9]+).example\.com [NC]
RewriteRule ^ http://%1.example.com/account/welcome.html [L]
@gahooa:我需要这样做,因为我的主页example.com只是一种没有特殊内容的登陆页面。 URL“account / welcome.html”的额外部分用于显示与“子域名”-account相关的页面(例如,gahooa.example.com将显示您的个人资料页面)。在我的应用程序中,我通过preg_match赶上子域,因此它知道它必须加载的女巫帐户。我希望我很清楚:)但不管怎样,谢谢!
这是我第一次使用Stackoverflow,但实际上效果很好!专家快速回复,干得好!我一定会回来的。)
答案 3 :(得分:0)
如果您真的想使用HTTP_HOST
:
RewriteRule ^$ http://%{HTTP_HOST}/account/welcome.html [L,R]
但是像gahooa已经说过如果你留在同一个主机上你没有指定绝对URL。 URL路径就足够了:
RewriteRule ^$ /account/welcome.html [L,R]