系统相关
首页 > 系统相关> > Cors在Nginx上阻止状态为403的请求

Cors在Nginx上阻止状态为403的请求

作者:互联网

我在Nginx上运行CORS时面临一个奇怪的问题,当服务器以403 http响应响应时,CORS对于除了一种情况之外的所有事情都能正常工作.

基本上当我使用正确的凭据登录时,cors请求工作正常,但是当我提供错误的登录凭据时,服务器(后端)响应403状态,我得到以下错误

“NetworkError:403 Forbidden – http://mydomain.com/v1/login
登录
跨源请求已阻止:同源策略不允许在http://mydomain.com/v1/login读取远程资源.可以通过将资源移动到同一域或启用CORS来解决此问题.

如果凭据是正确的,我不会得到这个错误,一切都很完美.

我已经完成了启用CORS的配置,它似乎可以正常工作.

以下是请求标题

请求标题

    User-Agent:Mozilla / 5.0(X11; Ubuntu; Linux x86_64; rv:29.0)Gecko / 20100101 Firefox / 29.0
    引用者:http://abc.mydomain.com/
    Pragma:没有缓存
    起源:http://abc.mydomain.com
    主持人:www.mydomain.com
    Content-Type:application / json; charset = utf-8
    内容长度:74
    连接:保持活力
    缓存控制:无缓存
    Accept-Language:en-US,en; q = 0.5
    Accept-Encoding:gzip,deflate
    接受:application / json,text / plain,/

响应标题

    服务器:nginx / 1.4.1
    日期:星期二,2014年6月10日05:28:30 GMT
    Content-Type:application / json;字符集= utf-8的
    内容长度:76
    连接:保持活力

解决方法:

nginx(> = 1.75)的一个选项是在add_header中指定always参数:

If the always parameter is specified (1.7.5), the header field will be
added regardless of the response code.

标签:nginx,http-status-code-403,cors
来源: https://codeday.me/bug/20190624/1278519.html