专注于 JetBrains IDEA 全家桶,永久激活,教程
持续更新 PyCharm,IDEA,WebStorm,PhpStorm,DataGrip,RubyMine,CLion,AppCode 永久激活教程

nginx 反向代理设置,nginx上加好Access-Control-Allow-Origin头部,跨域依旧失败的问题

由于前端js请求数据会有一个异步问题

nginx上加好Access-Control-Allow-Origin头部,跨域依旧失败的问题

解决办法,nginx文档也已说明,只需要在指令后面加上“always”参数即可。

以下是配置代码


server{ listen 80; server_name your_server_name; #你的serverName root /usr/share/nginx/html; index index.html; location / { add_header Access-Control-Allow-Origin "*" always; add_header Access-Control-Allow-Methods "GET,POST,DELETE" always; add_header Access-Control-Allow-Header "Content-Type" always; } location ^~ /api { proxy_pass http://cctvksh5ca.v.xx.com/; } location ^~ /ts/ { proxy_pass http://121.31.30.xx:85/; add_header Access-Control-Allow-Origin "*" always; add_header Access-Control-Allow-Methods "GET,POST,DELETE" always; add_header Access-Control-Allow-Header "Content-Type" always; } }

在nginx中配置proxy_pass时,当在后面的url加上了/,相当于是绝对根路径,则nginx不会把location中匹配的路径部分代理走;如果没有/,则会把匹配的路径部分也给代理走。

  在nginx中配置proxy_pass时,如果是按照^~匹配路径时,要注意proxy_pass后的url最后的/,当加上了/,相当于是绝对根路径,则nginx不会把location中匹配的路径部分代理走;如果没有/,则会把匹配的路径部分也给代理走。

首先是location进行的是模糊匹配

  ``1)没有“/”时,location /abc/def可以匹配/abc/defghi请求,也可以匹配/abc/def/ghi等

  ``2)而有“/”时,location /abc/def/不能匹配/abc/defghi请求,只能匹配/abc/def/anything这样的请求

下面2种情况分别用http://192.168.1.1/proxy/test.html 进行访问。

1、proxy_pass后有 / 绝对路径 不带走 location 路径


location /proxy/ { proxy_pass http://127.0.0.1:81/; }

结论:会被代理到http://127.0.0.1:81/test.html 这个url

扩展1、


location /proxy/ { proxy_pass http://127.0.0.1:81/ftlynx/; }

结论:会被代理到http://127.0.0.1:81/ftlynx/test.html 这个url。

扩展2、


location /proxy/ { proxy_pass http://127.0.0.1:81/ftlynx; } 

结论:会被代理到http://127.0.0.1:81/ftlynxtest.html 这个url

2、proxy_pass 后没有 / ,带走location路径


location /proxy/ { proxy_pass http://127.0.0.1:81; }

结论:会被代理到http://127.0.0.1:81/proxy/test.html 这个url

文章永久链接:https://tech.souyunku.com/23571

未经允许不得转载:搜云库技术团队 » nginx 反向代理设置,nginx上加好Access-Control-Allow-Origin头部,跨域依旧失败的问题

JetBrains 全家桶,激活、破解、教程

提供 JetBrains 全家桶激活码、注册码、破解补丁下载及详细激活教程,支持 IntelliJ IDEA、PyCharm、WebStorm 等工具的永久激活。无论是破解教程,还是最新激活码,均可免费获得,帮助开发者解决常见激活问题,确保轻松破解并快速使用 JetBrains 软件。获取免费的破解补丁和激活码,快速解决激活难题,全面覆盖 2024/2025 版本!

联系我们联系我们