我在 Windows 2016 服务器上安装了 IIS,并且正在配置一些从 Windows 2008 服务器迁移的网站。这些网站需要 Windows 身份验证。其中一个网站是服务提供商,它有一个 .asmx 文件,该文件使用 XML 文档响应特定服务请求。另一个网站是传统的 ASP.NET 网站,它向第一个网站发送请求并使用返回的 XML 文件作为填充其自身页面横幅的数据。
我可以直接从客户端计算机访问这两个网站。后者网站恢复正常显示,只是横幅不见了。但是,我能直接从我的桌面浏览器向前一个站点发送请求,它会发送预期的 XML 响应。
因此,我推断,有某些东西阻碍了后一个站点向同一服务器上的前一个站点发送的请求,或者阻止了前一个站点处理该请求。
为了解决问题,我远程控制了服务器,并尝试在 Chrome 中向两个网站发送请求——两个都输入用户名和密码后,网站无法验证我的身份。这个用户名和密码与我从桌面浏览时提示时使用的域用户名和密码相同,也与我用于验证远程桌面连接的用户名和密码相同,当然,也与我登录远程服务器时使用的用户名和密码相同,远程服务器允许我直接打开和编辑网站的底层文件。
由于当我从服务器内部发送请求时,两个站点都不会对我进行身份验证,这当然解释了为什么后一个站点向前一个站点的请求失败。但为什么身份验证不成功?有什么想法吗?