Javascript 更改XmlHttpRequest的URL会导致Cookie无法发送

Javascript 更改XmlHttpRequest的URL会导致Cookie无法发送,javascript,cookies,Javascript,Cookies,我有一个内部web服务器,它提供了一个界面,让我可以查看和更改该服务器上的一些数据。当我在一个位置时,我可以直接访问服务器,但是从另一个位置我必须创建到服务器的ssh隧道。因此,我放在浏览器中的URL会根据我的位置而变化:例如,http://myserver/blah与http://localhost:8000/blah。它是同一台服务器,只是不同的主机名 这很不方便,因为有时我会忘记在一个位置保存更改,而当我转到另一个位置时,突然找不到服务器。这也很不方便,因为我一直要重新加载页面。我想只加载

我有一个内部web服务器,它提供了一个界面,让我可以查看和更改该服务器上的一些数据。当我在一个位置时,我可以直接访问服务器,但是从另一个位置我必须创建到服务器的ssh隧道。因此,我放在浏览器中的URL会根据我的位置而变化:例如,
http://myserver/blah
http://localhost:8000/blah
。它是同一台服务器,只是不同的主机名

这很不方便,因为有时我会忘记在一个位置保存更改,而当我转到另一个位置时,突然找不到服务器。这也很不方便,因为我一直要重新加载页面。我想只加载一次页面,并让它在任何地方工作。因此,我想我应该在XmlHttpRequest处理中添加一些代码来检测是否找不到服务器,并使用备用服务器地址重新发出请求。问题是,当这种情况发生时,我发现我的cookie没有发送到服务器

我有
localhost
myserver
的cookie。它们实际上是同一组值,因为它实际上是同一台服务器,但它们显然是重复的,因为服务器是从两个不同的主机名访问的。如果我手动更改服务器的主机名,我没有问题,但显然这是我试图避免的

我怀疑可能存在一些安全问题,但在重新阅读Cookie的工作原理后,我无法明确指出可能会出现这种行为,或者如何修复它

顺便说一句,问题不是我试图做一个跨站点的请求。我通过返回字段“accesscontrolalloworigin:*”在服务器端显式地允许这样做,并且我对请求的这一部分没有任何问题。使用firebug,我可以看到问题是,当请求重新发送到新主机名时,没有发送cookie,即使该主机名存在cookie