欢迎访问:常州市武进区嘉泽中心小学网站 !今天是:
栏目列表
您现在的位置是:首页>>教师>>计算机技术>>程序设计>>杂项>>文章内容
XMLHTTP 发送HTTP请求失败的可能性分析(二) 一种极端情况
发布时间:2008-11-20   点击:   来源:本站原创   录入者:佚名
 

XMLHTTP发送HTTP请求失败的可能性分析

          (二) 一种极端情况

TomoSoft ID Number: Q20011125

Article last modified on 11-25-2001

 


The information in this article applies to:

  • Microsoft XML, versions 2.6, 3.0, 3.0 sp1

 

提要

鉴于使用XMLHTTP对象和ServerXMLHTTP对象时,牵涉面比较广。所以为了更好地驾驭这两个对象,我们应该更多地关注以下关键词:

OWA、Exchange 2000 Server、IE Security Setting和Proxy Setting。

本文继续谈及访问被拒绝的一种可能性。

通过这种极端情况,可以说明,有许多问题的产生可能和你所使用的工具无关,不是你的错。

“Access Is Denied”

第一种情况

我们先讲一个关于OWA的故事。

现在你刚装了Exchange 200 Server。在IE中,你键入如下形式的URL:

http://<servername>.<company>.com/exchange/<username>

于是出现了OWA的访问界面。

你点击“Public Folders”的按钮试图去访问Exchange的公共文件夹。

但是返回了这样的错误信息:

“Access is denied. Your browser security settings will not allow access to this folder from this page.”

  M 这就是因为你使用了Fully Qualified Domain Name(FQDN)!

当你使用FQDN去访问OWA时,你的树状图的页面连的是<ServerName>.<Company>.com,而在此页上公共文件夹的位置却被设为了<ServerName>。

所以,我们的IE浏览器就自作主张地把这种访问解释为了:跨域访问(Cross-Domain)! L

而缺省情况下,IE的安全设置中,是禁止在Internet中进行跨域通信的!L

 

故事讲到这里,你一定知道在什么情况下,用XMLHTTP对象提交HTTP操作会遭遇到访问禁止的待遇了吧。

我们假设你这么做,你当前出发的地方是被设置为<ServerName>的宿主,但是你却想去访问<ServerName>.<company>.com的资源,或者向它提交HTTP请求。于是你就会得到“访问禁止”的反馈。反过来,也一样。

(这里的假设我并没有试验过,请大家自行验证。)

解决的方法有三个:

Ð 第一个:

最简单的办法就是,把所有这些访问形式统一起来,要么<ServerName>,要么<ServerName>.<Company>.com。

对于刚才讲过的故事,我们只需要用http://<ServerName>.<Company>.com/public去访问公共文件夹即可。不过对于这个Bug,大家可能无法重现了,因为Exchange 2000的SP1已经解决了它。

 

Ð 第二个:

安装你的Exchange 2000 Server为前端-后端的形式,这样前端服务器可以接受客户端的请求,并将其代理到适当的后端服务器上。

 

Ð 第三个:

如果你当前正在使用SSL,你就可以在IE的设置中作以下操作,以允许你的站点能够跨域访问:

1.              在Internet选项卡上,查看Security页,点击“信任站点”,再点击“站点”;

2.              把你的站点加入进去;

点击“自定义级别”,在“其他”下的“通过域访问数据资源”下,选中“启用”(原先肯定是禁用的),如下图所示:
附件:
    关闭窗口
    打印文档
    账号登录
    保持登录 忘记密码?
    账号与武进教师培训平台同步