原文地址:http://www.ttlsa.com/nginx/nginx-proxy_set_header/
公司使用nginx作为负载均衡,有时候需要自定义header头发送给后端的真实服务器. 想过去应该是非常的简单的事情.
例子如下:
设置代理服务器ip头
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
然后自己在自定义个header,remote_header_test,如下:
proxy_set_header remote_header_test "123123123";
接着后端真实服务器打开www.ttlsa.com/nginx_header.php
源代码是简单的phpinfo
<?php
phpinfo();
?>
在phpinfo结果页面中搜索刚才设置的头部,发现没有找到,网上查找资料,才发现原来nginx会忽略掉下划线的头部变量.于是改成如下:
proxy_set_header remoteheadertest "123123123";
再次打开www.ttlsa.com/nginx_header.php,搜索remoteheadertest,有内容. 看来果真不能用下划线. 然后改成’-‘,如下:
proxy_set_header remote-header-test "123123123";
打开页面,搜索到的头部是remote_header_test. 自动转换成下划线了.
如果想要支持下划线的话,需要增加如下配置:
underscores_in_headers on;
可以加到http或者server中
语法:underscores_in_headers on|off
默认值:off
使用字段:http, server
是否允许在header的字段中带下划线
版权说明
文章标题: nginx反向代理proxy_set_header自定义header头无效
本文地址: http://www.ttlsa.com/nginx/nginx-proxy_set_header/
除非注明,博客文章均为"运维生存时间"原创,转载请标明本文地址
运维圈子期待您的加入(http://bbs.ttlsa.com)
分享到:
相关推荐
# proxy_set_header X-Real-IP $remote_addr; # proxy_set_header X-Scheme $scheme; # proxy_pass http://192.168.2.37; #} location / { proxy...
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } } (完整拷贝上面的内容server_name www.*****.com; 这里面的域名即是来访域名 proxy_pass http://192.168.45.1:8045; 这里面的域名...
nginx配置示例: 代码如下:server{ location { … proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; … }} 二、在iis站点上安装isapi filter 在f5的开发论坛上找到的,按开发者的话说,是...
Win下最新版本儿:nginx-0.8.31下载地址:... proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header REMOTE-HOST $remote_addr; proxy_set_header X-Forwa
前言 因为小程序上传需要https,服务器https用的是letsencrypt生成的证书,但是阿里云oss没有做https(懒得上传证书),就想着用Nginx代理转发上传请求。 Nginx配置 ... proxy_set_header X-Real-I
如果基本网址不是/ ,请在任何反向代理后面运行它,并提供X-Script-Name标头。 nginx的示例位置: location /request_bin { proxy_pass http://request_bin:5000; proxy_set_header Host $host; proxy_set_...
Google反向代理[Nginx]可配置的Nginx com代理反Google产品,可单独使用Archivo默认的默认网站-可用nano / etc / nginx / sites-可用/默认pegar lo siguiente:配置server { listen 80 ; server_name example.com; ...
nginx可以很方便的配置成反向代理服务器: server { listen 80; server_name localhost; location / { proxy_pass http://x.x.x.x:9500; proxy_set_header Host $host:80; proxy_set_header X-Real-...
配置Nginx反向代理,将所有请求代理到swoole端口上,配置如下 location / { proxy_set_header Connection "keep-alive"; proxy_set_header Host $http_host; proxy_http_version 1.1; proxy_pass ...
proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $remote_addr; deny 192.168.1.1; allow 127.0.0.0/24; allow 123.56.0.0/16; allow 17
最近一个项目需要承载高并发请求,所以在后端语言上选择了NodeJs,但是nodejs有时候读取不到请求的主机名,所以想到使用nginx+nodejs的方式进行处理。...proxy_set_header Host $host; proxy_set_he
docker部署 端口映射8989 ...#我的博客网站,nginx反向代理 server { listen 80; charset utf-8; server_name blog.hanxu51.cn; location / { proxy_redirect off; proxy_set_header Host $host; proxy_s
nginx支持页面缓存,之前我的博客... 解决方案,nginx提供proxy_hide_header的指令,可以去掉相关的响应头信息: proxy_hide_header Set-Cookie; 结论:配置后,串会话的问题不再出现 您可能感兴趣的文章:WIN下Nginx缓
广播模式对于分布式设置,可以激活广播模式。... Nginx可用作websocket反向代理: server {... location /soundboard/ { proxy_pass http://localhost:8000/; proxy_http_version 1.1; proxy_set_header
其实本人比较喜欢nginx跑静态和做负载反向代理,动态php还是交给apache处理比较稳定,jsp就交给tomcat、resin或jboss。nginx跑静态的能力是无与伦比的,是目前web服务器里最强的。...proxy_set_header Host $
npm install 修改config.json node index.jsnginx 您可以使用 nginx 进行反向代理和更好的文件服务。 将以下添加到您的服务器块: # Add your extensionslocation ~* ^.+\.(jpg|jpeg|gif|png|ico|css|zip|tgz|gz|...