网站首页 > 技术教程 正文
基本使用
使用add_header允许在响应头中添加自定义字段。
官方文档地址:http://nginx.org/en/docs/http/ngx_http_headers_module.html
参考nginx官方文档,添加响应头的方法如下:
举例:在conf文件的server作用域中添加如下响应头:
server {
listen 80;
# 其他配置...
# 允许跨域
add_header Access-Control-Allow-Origin *;
add_header Access-Control-Allow-Methods 'GET, POST';
add_header Access-Control-Allow-Headers 'DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization';
# 其他配置...
}
保存配置,重启nginx服务器,尝试跨域请求nginx目录下的json文件,响应成功。
遇到的坑:反向代理请求报错
由于是在nginx server作用域下设置add_header,会对nginx反向代理的php/tomcat请求生效。
如果php代码中设置了header('Access-Control-Allow-Origin: *');add_header不会覆盖而是追加,响应头会出现Access-Control-Allow-Origin多个定义错误。
解决方法:
在nginx location作用域中设置add_header。一般跨域请求的都是json文件,仅对json文件生效即可。
location ~ .*\.(json)?$ {
add_header Access-Control-Allow-Origin *;
add_header Access-Control-Allow-Methods 'GET, POST';
add_header Access-Control-Allow-Headers 'DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization';
}
add_header总结
- add_header 指令用于添加响应头字段,当且仅当状态码为200, 201, 204, 206, 301, 302, 303, 304, 307, 308有效。
- add_header在其他状态码下也生效,可以加上always,add_header name value always。
- 当前作用域(http、server、location、location的if)没有设置add_header的话,会继承外层作用域的add_header设置。
猜你喜欢
- 2024-10-06 nginx中控制某些特定User-Agent的来源访问
- 2024-10-06 Nginx 高可用方案(nginx高可用方案)
你 发表评论:
欢迎- 最近发表
-
- 搞懂linux awk的使用(linux awk $1)
- ZYNQ QSPI flash分区设置&启动配置
- Linux 的 18 个装 B 命令,记得全部搂一遍
- 【Linux】程序执行的黑魔法:五分钟彻底搞懂 Linux ELF 文件
- 聊一聊 Linux 上对函数进行 hook 的两种方式
- 第十二节 Ubuntu 系统 Docker 镜像安装与容器运行指南
- Linux常用场景-VIM文本编辑批量替换
- Linux 下使用 killall 命令终止进程的 8 大用法
- 告别Permission denied!手把手教你玩转Linux文件权限
- [Linux Shell]批量更改文件&文件夹 名大写为小写
- 标签列表
-
- 下划线是什么 (87)
- 精美网站 (58)
- qq登录界面 (90)
- nginx 命令 (82)
- nginx .http (73)
- nginx lua (70)
- nginx 重定向 (68)
- Nginx超时 (65)
- nginx 监控 (57)
- odbc (59)
- rar密码破解工具 (62)
- annotation (71)
- 红黑树 (57)
- 智力题 (62)
- php空间申请 (61)
- 按键精灵 注册码 (69)
- 软件测试报告 (59)
- ntcreatefile (64)
- 闪动文字 (56)
- guid (66)
- abap (63)
- mpeg 2 (65)
- column (63)
- dreamweaver教程 (57)
- excel行列转换 (56)
本文暂时没有评论,来添加一个吧(●'◡'●)