
NGINX配置跨域支持的正确方法
这两天一直在搞酷瓜云网的app,是uni-app支持的,现在在学卖。现在开始了。
做H5的时候,跨域请求后端API是不可避免的。虽然内置在HBuilder中的浏览器不会出现跨域问题(这个应该是内部处理的),但是内置浏览器真的很蠢,过一段时间就会卡死,导致HBuilder没有反应,杀进程也没用。只能重启,重复几次谁能承受。后来发现使用外部浏览器不会有这个问题,但是面临跨域。
在这里,nginx被配置为支持CORS,所以不需要移动任何代码。正确的配置如下:
位置~ \。php$ {
if ($request_method=’OPTIONS’) {
add _ header ‘ Access-Control-Allow-Origin ‘ ‘ * ‘始终;
add _ header ‘ Access-Control-Allow-Methods ‘ ‘ GET,POST,OPTIONS,PUT,DELETE ‘始终;
add _ header ‘ Access-Control-Allow-Headers ‘ ‘ * ‘始终;
add _ header ‘ Access-Control-Max-Age ‘ 1728000始终;
add _ header“Content-Length”0;
add_header ‘Content-Type ‘ ‘文本/纯文本;charset=utf-8 ‘;
返回204;
{}
if($ request _ method ~ *(GET | POST | DELETE | PUT)’){
add _ header ‘ Access-Control-Allow-Origin ‘ ‘ * ‘始终;
{}
{}
PS:网上很多垃圾文章都是收集粘贴复制的,根本没有经过验证。会浪费更多时间,带你去坑。