我的公司有两个相同的应用程序 - 一个在内部服务器上,一个由第三方托管公司托管。
我正在使用 IE7 并且可以成功访问我们网站上的应用程序。但是当我使用 IE7 尝试访问其他站点上的应用程序时,我被重定向到应用程序的不兼容浏览器自定义错误页面。我可以使用 IE6 在两个站点上成功访问该应用程序。该应用程序有一个接受的浏览器 ini 文件,它明确允许 IE6(和所有以前的浏览器版本),但根本没有提到 IE7。
我知道托管公司没有我们内部执行的相同标准和政策,这解释了差异。我如何才能准确地确定导致这种特定情况的差异是什么?IIS 设置是从哪里开始的好地方?
两台服务器都运行 Windows Server 2003。
有错误信息吗?还是错误页面?
确保您可以 ping 外部服务器,并且可以通过其他方式访问它,例如 Firefox、Chrome、Safari、Opera 甚至 Lynx。也许尝试使用 IE 6 或 IE 8,因为所有三个版本之间都有变化。
此外,请检查并确保您的 DNS 返回正确的 IP 地址。如果出现 DNS 错误,它可能无法找到 IP 地址。
否则,可能检查 IIS 设置,并确保两个平台使用相同版本的东西(如果使用 SQL 服务器、IIS(可能相同)、系统更新)。
还有一件事:你需要使用http还是https?这也可能导致问题,并且并不总是告诉您问题所在。特别是如果由于某种原因托管公司正在使用非标准 SSL 端口。
“不允许”到底是什么意思。它是故意阻止还是只是一个错误?
IE 客户端没有通过您的内部网络中的主机还是在 Internet 上?如果它们在您的内部网络上,请检查 DNS,检查 IE 客户端中的代理设置。
如果其他用户代理(正如 Tom Willwert 在他的评论中暗示的那样),那么我将首先查看您的主机是否使用了某种 URL 重写过滤器(例如 ISAP_Rewrite)。他们有能力匹配用户代理字符串并根据结果将客户端发送到其他地方。
您的本地网络和远程站点之间的防火墙策略是什么?您通过哪些设备(例如防火墙、路由器、ISP 等)访问“远程服务器”
这可能是某种 ActiveX 控件或脚本问题。默认情况下,IE7 可能会阻止对外部站点的某些功能的访问,但允许对 Intranet 站点进行访问。
在 IE7 中,您可以尝试将外部托管版本的网站添加到 IE7 的“受信任站点”列表...工具、Internet 选项、安全性,单击受信任站点,然后单击站点按钮并添加它。
检查阻止服务器上站点的根目录中是否有 robots.txt。如果是这样,请检查那里没有禁止即的规则。