我使用javascript得到了一个奇怪的行为我无法理解:我的应用程序的javascript相对URL正在以不同方式解析,具体取决于应用程序的托管位置:
a) my计算机的IIS 5.1(Windows XP)或 b)我的主机提供商(我几乎肯定会运行Windows Server 2003)。
行为1 (正常的?) - 在我的计算机的IIS上托管应用程序
如果浏览器的当前位置为http://localhost/appvirtualdir/Newsletter/List 然后我跑
window.location = "../Newsletter/List"在Firebug的控制台中,浏览器被重定向到http://localhost/appvirtualdir/Newsletter/List(保留在同一页面上)。
行为2 (奇怪的一个) - 应用程序托管的应用程序:
如果浏览器的当前位置为http://my.domain.com/appvirtualdir/Newsletter/List 我在Firebug的控制台中运行完全相同的脚本,浏览器被重定向到http://my.domain.com/appvdir/Newsletter/Newsletter/List,显然不存在。
所以,问题是:为什么,在第二种情况下,javascript不是“向上移动树”?
谢谢!
答案 0 :(得分:1)
您确定自己在网址http://my.domain.com/appvirtualdir/Newsletter/List
上而未使用http://my.domain.com/appvirtualdir/Newsletter/List/
(请注意尾随斜杠)吗?
服务器可能认为它是一个目录(您可以通过这种或那种方式重定向到http://my.domain.com/appvirtualdir/Newsletter/List/
,这是可能的,因为当文件/
是List
时,只会忽略尾随/appvirtualdir/Newsletter
在List
)中找到,在这种情况下,客户端的浏览器认为您在目录{{1}}中。