使用带有ARR和URL重写的IIS作为反向代理的CORS

Mar*_*ark 6 iis proxy http cors

我正在使用带有ARR和URL重写的IIS作为反向代理,以支持与ElasticSearch服务器的HTTPS连接.据我所知,ES已正确配置,并且与ES的直接HTTP连接不会导致错误.

但是,当我通过代理连接时,我在浏览器中收到此错误:

跨源请求已阻止:同源策略禁止在https:// myserver:19201/myindex/_search读取远程资源.(原因:在CORS预检频道的CORS标题'Access-Control-Allow-Headers'中遗漏了令牌'授权')

elasticsearch.yml文件的相关部分是这样的:

http.cors.enabled: true
http.cors.allow-origin: "*"
http.cors.allow-headers: ["X-Requested-With","X-Auth-Token","Content-Type","Content-Length","Authorization","engine-name"]
http.cors.allow-credentials: true
Run Code Online (Sandbox Code Playgroud)

有什么特别的东西我需要通过代理启用这些请求,或者这是一个傻瓜的差事,我应该寻找另一种选择?

Tar*_*raz -1

因此,您应该能够使其正常工作的一种方法是设置 CORS 以允许所有来源:

Access-Control-Allow-Origin: *

您可以在 IIS 中的 HTTP 响应标头下进行设置。

然而,这从一开始就违背了使用 CORS 的目的,从安全角度来看可能不建议这样做。