
[英]IIS Website working using localhost but not with IP Address or domain names
[英]IIS website works with localhost, but not using an IP address
我有一个 Angular 前端和一个 .NET 框架后端,它有以下web.config
文件(没有关于授权/认证的其他内容):
<location path="Tokens">
<system.webServer>
<security>
<authentication>
<windowsAuthentication enabled="true" />
<anonymousAuthentication enabled="false" />
</authentication>
</security>
</system.webServer>
</location>
<system.webServer>
<security>
<authentication>
<windowsAuthentication enabled="false" />
<anonymousAuthentication enabled="true" />
</authentication>
</security>
</system.webServer>
我正在使用 AD 登录,这是令牌Tokens
由 JWT 令牌保护。
我目前的问题是,我希望使用 IIS 与域中的其他计算机一起测试该网站,如果我使用localhost
,该网站可以正常工作,但是一旦我使用我的 IP,错误就会开始出现。
我的前端配置 JSON:
{
...
"apiAddress": "https://IP:50505/",
...
}
后端web.config
也包含这个:
<add key="WhitelistedServerUrls" value="https://IP:34622" />
因此,如果配置文件中的 IP 是localhost
,那么一切正常,但如果我将其交换为实际的 IP,则会出现 CORS 错误,如下图所示:
如果我使用本地主机,这些错误都不会出现。 以下是我尝试过的事情的列表:
HTTP Response Headers
功能中配置了它
https://IP
添加到本地 intr.net
我的猜测是我的 IIS 配置不正确,因为如果我使用localhost
而不是 IP 地址,网站就可以正常工作。
您启用了 Windows 身份验证,因此当浏览器发送的 CORS 预检请求(匿名 OPTION 请求)到达 IIS 时,IIS 返回 401 并触发您看到的错误。
您将不得不使用 IIS CORS 模块来正确处理此类预检请求,
https://blogs.iis.net/iisteam/getting-started-with-the-iis-cors-module
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.