JavaScript:重定向到不同的子域名

3
我有一个落地页:“https://www.example.com”和一个应用程序:“https://app.example.com/something/”。在某些用户操作,如注销时,我需要将用户重定向回原始的落地页。我的硬编码解决方案可以工作:
window.location = "https://www.example.com"

但这是一种不好的做法,在其他环境中,比如我的本地开发环境(http://localhost:8082/something - 应用程序,并没有本地着陆页),这很烦人。有没有一种好的、简单的解决方案,可以将当前站点的基础域名重定向到(example.com默认重定向到www.example.com)?


这通常可以通过更改Web服务器中的设置来解决。在许多托管平台上(我使用GoDaddy),都有相应的设置选项。 - Scott Marcus
1个回答

5

我尝试过了,存在两个问题:1. 即使在本地使用 http,也会被重定向到 https。2. 端口号(8082)丢失了。我知道我可以编写一些正则表达式和字符串替换来解决,但对于一个简单的重定向来说,这似乎过于复杂了。 - ahe
你可以考虑使用"http://${hostname}"而不是"https://${hostname}",这样怎么样? - Besto
我仍然有一个端口的问题 :( 这个端口似乎不是location.hostname的一部分,而是由location.port保存的。也许我会在端口80上运行我的本地服务器.. - ahe
你可以使用 var port = location.port; 然后 "window.location = "https://${hostname}:${port}";"。另外,你也可以参考这个链接:http://www.w3schools.com/jsref/prop_loc_port.asp。 - Besto

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接