Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/http/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript:重定向到不同的子域_Javascript_Http_Url_Redirect_Url Rewriting - Fatal编程技术网

Javascript:重定向到不同的子域

Javascript:重定向到不同的子域,javascript,http,url,redirect,url-rewriting,Javascript,Http,Url,Redirect,Url Rewriting,我有一个登录页:“”和一个应用程序:“”,在一些用户操作(如注销)中,我需要将用户重定向回原始登录页。 我的硬编码解决方案确实有效: window.location = "https://www.example.com" 但这是一种糟糕的做法,在我的本地开发(对于应用程序,没有本地登录页面)等其他环境中也很烦人。 是否有一些好的简单的解决方案可以重定向到我当前站点的基本域(example.com默认重定向到www.example.com)?然后我会使用 var hostname = locat

我有一个登录页:“”和一个应用程序:“”,在一些用户操作(如注销)中,我需要将用户重定向回原始登录页。 我的硬编码解决方案确实有效:

window.location = "https://www.example.com"
但这是一种糟糕的做法,在我的本地开发(对于应用程序,没有本地登录页面)等其他环境中也很烦人。 是否有一些好的简单的解决方案可以重定向到我当前站点的基本域(example.com默认重定向到www.example.com)?

然后我会使用

var hostname = location.hostname;
window.location = `https://${hostname}`;
资料来源:

此外:

编辑:对于端口:

你可以用

var hostname = location.hostname;
var port = location.port;
window.location = `https://${hostname}:${port}`

这通常通过更改web服务器中的设置来解决。在许多托管平台(我使用GoDaddy)中,都有这样的设置。我试过了,但有两个问题:1。im重定向到https(即使im在http上是本地的)和2。端口(8082)丢失。我知道我可以编写一些regex和strig replace,但对于简单的重定向来说,这似乎有点太复杂了……用“http://${hostname}”代替“https://${hostname}”怎么样?我的端口仍然存在问题:(该端口似乎不是location.hostname的一部分,但location.port保留它。也许我会在端口80运行本地服务器。另外:您可以使用var port=location.port;然后使用“window.location=”https://${hostname}:${port}”;