使用apache mod_proxy 2.5我正在尝试在proxypass位置中使用mod_headers合并或替换现有的access-control-allow-origin标头。 从代理后端返回的答案已经包含了一个我想要合并或替换的access-control-allow-origin标头
Header always merge Access-Control-Allow-Origin "*"
Header always set Access-Control-Allow-Methods "OPTIONS, GET"
Header always set Access-Control-Max-Age "1000"
Header always set Access-Control-Allow-Headers "x-requested-with, Content-Type, origin, authorization, accept, client-security-token, x-smp-appcid"
这导致标题重复,这会在所有浏览器中引发错误,因为此标头只能出现一次。
同样是Header始终设置,尽管这应该替换现有的标头。
我还尝试使用if模块首先检查标题是否发生,并且仅在未设置时设置。但是在某种程度上难以查看响应标头。
感谢任何帮助
答案 0 :(得分:0)
我通过仅在其预检请求时设置Access-Control-Allow-Origin和Access-Control-Allow-Credentials标头来解决同样的问题
由代理后端(已发送所需标头)处理的第二个请求(POST,DELETE,PUT等)不预检请求,因此不会再次设置标头通过Apache规则。
要检查预检请求,您可以检查请求是否包含:
希望这有帮助。