nginx打开跨域cookies授权配置

本文介绍了一段Nginx配置代码的具体作用,该配置实现了对于来自baidu.com域名请求的跨域支持,通过设置HTTP头部信息实现跨域资源共享(CORS)。此配置能够帮助开发者理解如何为特定来源的请求开放跨域访问。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

        if ($http_origin ~* (baidu.com)) {

                add_header 'Access-Control-Allow-Origin' '$http_origin';

                add_header 'Access-Control-Allow-Credentials' 'true';

        }  

 

*.baidu.com来的请求都开放

 

 

### Nginx 配置解决方案 Nginx 可以通过配置 CORS(资源共享)来解决前端问题。以下是一个完整的 Nginx 配置示例,确保后端能够正确处理请求[^1]。 ```nginx server { listen 80; server_name www.example.com; location / { root /usr/share/nginx/html; index index.html index.htm; # 允许的来源名 add_header Access-Control-Allow-Origin *; # 允许的HTTP方法 add_header Access-Control-Allow-Methods GET, POST, OPTIONS; # 允许的自定义头部字段 add_header Access-Control-Allow-Headers X-Requested-With, Content-Type; # 处理预检请求 if ($request_method = 'OPTIONS') { add_header Access-Control-Allow-Origin *; add_header Access-Control-Allow-Methods GET, POST, OPTIONS; add_header Access-Control-Allow-Headers X-Requested-With, Content-Type; add_header Content-Length 0; add_header Content-Type text/plain charset=UTF-8; return 204; } } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } } ``` 上述配置中,`add_header Access-Control-Allow-Origin *` 表示允许所有来源的请求。如果需要限制特定来源,可以将 `*` 替换为具体的名,例如 `https://www.example.com`[^1]。 此外,对于预检请求(`OPTIONS` 方法),需要单独处理并返回 `204 No Content` 状态码[^1]。 ### 注意事项 - 如果前端应用需要发送带有认证信息(如 Cookies 或 Token)的请求,则需要将 `Access-Control-Allow-Origin` 的值设置为具体的名,而不是使用通配符 `*`。 - 确保后端服务支持 CORS 请求,并正确响应前端的请求[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值