Sam*_*gal 10 nginx http-status-codes cors
我让CORS与Nginx合作得很好.API被设计为发送非200状态代码 - 例如401,404等 - 用于错误输入.问题是,如果Chrome收到非200状态代码,Chrome会取消/中止该请求.由于这个原因,我无法在Web客户端上显示确切的错误.
CORS非200状态代码错误的方法是什么?
小智 10
默认情况下,Nginx仅为其认为成功的请求添加标头.您可以通过将always参数添加到add_header指令来使其添加标头而不考虑响应代码,例如
add_header 'Access-Control-Allow-Origin' '*' always;
Run Code Online (Sandbox Code Playgroud)
您需要使用 more_set_headers 模块。
使用 -s 您可以指定更多状态代码
more_set_headers -s '404,400,403' 'Access-Control-Allow-Origin: http://domain.com';
但是,如果您尚未在 nginx 中安装此模块,则需要重新编译它。编译它:
wget http://nginx.org/download/nginx-1.7.8.tar.gz
git clone https://github.com/openresty/headers-more-nginx-module.git
tar -xzvf nginx-1.7.8.tar.gz
cd nginx-1.7.8
./configure --prefix=/opt/nginx --add-module=/path/to/headers-more-nginx-module
make
make install
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1388 次 |
| 最近记录: |