`
xusl8888
  • 浏览: 10649 次
社区版块
存档分类
最新评论

nginx反向代理服务器获取不到端口的问题的解决办法

阅读更多
使用nginx为反向代理服务器时,后端应用程序获取不到请求端口的解决办法。

以下是nginx 简单的配置
server {
        listen       81;
        server_name  localhost;
        location / {
          proxy_set_header Host $host;
          proxy_set_header X-Forwarded-For $remote_addr;
          proxy_pass http://127.0.0.1:9380;
        }
}

把第5行 的 proxy_set_header Host $host; 修改为  proxy_set_header Host $host:$server_port; 即可。

原因是$host参数不包含端口号导致请求头部Host中的端口号丢失从而使后端程序不能正确的获取端口号。

使用 CXF 实现webservice 时 通过nginx 反向代理 动态生成的wsdl文件中 location地址中的端口号也会丢失,从而导致 webservice 调用失败。

$host 参数的解释
This variable is equal to line Host in the header of request or name of the server processing the request if the Host header is not available.

This variable may have a different value from $http_host in such cases: 1) when the Host input header is absent or has an empty value, $host equals to the value of server_name directive; 2)when the value of Host contains port number, $host doesn't include that port number. $host's value is always lowercase since 0.8.17.

0
0
分享到:
评论

相关推荐

    nginx反向代理webSocket配置详解

    最近在做项目的时候用到了webSocket协议,而且是在微信小程序中用到了webSocket,微信小程序中使用wss协议的时候不能设置端口,只能使用默认的443端口。我擦,我的https已经监听了443端口,webSocket再去监听443,肯定...

    使用nginx反向代理实现直接访问域名而不用输入端口

    首先是nginx安装 [root@iZbp1fuxe9jel2667kxu6eZ ~]# yum install nginx -y 进入目录 [root@iZbp1fuxe9jel2667kxu6eZ ~]# cd /etc/nginx 修改配置文件 [root@iZbp1fuxe9jel2667kxu6eZ nginx]# vim nginx.conf ...

    Nginx服务器中配置非80端口的端口转发方法详解

    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使用nodejs做反向代理服务器

    时下不少场景,都是申请一个 VPS 主机来托管运行 Web 项目的...许多开发者都会面临到 80 端口这个问题,并且实际情况会受到成本的限制。因为单独为一个项目就买一个 VPS,也不太经济、不太合算,管理起来也不方便。于是

    Nginx反向代理springboot的jar包过程解析

    从官方的说明中 打成jar部署是最好的方式,但是这样又有个问题 如果同时部署多个spring-boot项目 端口不一样 怎么通过域名来访问呢,接下来就需要Nginx出手了,Nginx 是一个高性能的HTTP和反向代理服务器,也是一个...

    wnmp 绿色服务器套件(Nginx+PHP集成环境) v1.0.1

    Nginx已经在俄罗斯最大的门户网站——Rambler Media(www.rambler.ru)上运行了3年时间,同时俄罗斯超过20%的虚拟主机平台采用Nginx作为反向代理服务器。注意事项:wnmp程序所在路径不能含有汉字和空格。MySQL默认...

    微信小程序配置服务端https协议《二》nginx+tomcat服务器配置

    下面我的解决办法是在Internet和tomcat之间加一个nginx反向代理。 (此图片来源于网络,如有侵权,请联系删除! ) 基本结构 https请求发送到nginx,nginx将请求代理到tomcat nginx解决了单ip多域名的问题,多站

    nginx(1-9-8).syno.tar官方镜像

    Nginx是用于HTTP,HTTPS,SMTP,POP3和IMAP协议的开源反向代理服务器,以及负载平衡器,HTTP缓存和Web服务器(原始服务器)。Nginx项目一开始就非常关注高并发,高性能和低内存使用。它获得了两节式BSD许可,并在...

    Nginx转发socket端口配置详解

    Nginx 转发 socket 端口常见场景:在线学习应用,在常规功能之外,增加一个聊天室功能,后端选择 swoole 提供服务提供者,同时不想前端直接 ip:port 方式链接到服务,需要使用 Nginx 进行转发。 常规情况,我们可以...

    详解nginx代理socket.io服务踩坑

    nginx代理了两台socket.io服务器。socket.io的工作模式是polling升级到websocket 现象 通过nginx请求服务时,出现了大量的400错误,有时候能升级到websocket,有时候会一直报错。但是直接通过 ip+端口 访问时,100%...

    毕业设计,基于SpringBoot++CloudVue+MySql开发的个人博客网站,内含Java完整源代码,数据库脚本

    给C:\Windows\System32\drivers\etc\hosts文件添加 (1)127.0.0.1 image.blogs.com (2)127.0.0.1 lifeimage.blogs.com (用于Nginx反向代理到图片文件夹),启动Nginx服务器 一定要下载Redis,并且运行(端口...

    nginx 1.9 window 版本

    #设定http服务器,利用它的反向代理功能提供负载均衡支持 http { #设定mime类型,类型由mime.type文件定义 include /etc/nginx/mime.types; default_type application/octet-stream; #设定日志格式 access_log /...

    SpringBoot毕设资源--本人的毕业设计,个人博客网站。用到的后端技术有SpringBoot框架、Spring.zip

    4. 给C:\Windows\System32\drivers\etc\hosts文件添加 (1)127.0.0.1 image.blogs.com (2)127.0.0.1 lifeimage.blogs.com (用于Nginx反向代理到图片文件夹),启动Nginx服务器 5. 一定要下载Redis,并且运行...

    nginx部署访问vue-cli搭建的项目的方法

    但是我用history模式构建的项目需要借助后台技术,我这里选用的是nginx反向代理来部署项目。具体做法如下: 1、创建后台服务器 对象 upstream mixVueServer{ server baidu.com;#这里是自己服务器域名 } 2、创建...

    Nginx安装包

    Nginx的反向代理 http://www.cnblogs.com/zhrxidian/p/5491285.html tomcat+nginx+redis实现均衡负载、session共享(二) 今天我们接着说上次还没完成session共享的部分,还没看过上一篇的朋友可以先看下上次内容,...

    nginx实现根据URL转发请求的实战经历

    但是我们现在只外穿了后台管理系统(Springboot项目),不通过公网分配的IP只能访问到后台管理系统,要直接访问fastdfs服务的接口的话必须连接服务器公网,但是这限制了我们用户的访问(我没办法每次都去你的服务器的...

    mechanic:命令行工具,用于管理节点应用程序的Nginx支持的代理。 静态文件传递,负载平衡,HTTPS,以及带有纯净接口的所有爵士乐

    通常会设置一个或多个在高编号端口上侦听的节点应用程序,并使用nginx虚拟主机和反向代理功能将流量传递到节点。 nginx还可以提供比节点更好的静态文件服务,并且具有经过反复测试的循环负载平衡功能。 我们已经将...

    基于SpringBoot框架搭建的物联网数据采集系统服务器端(源码)

    * 1.框架SpringBoot+MyBatis,相比于SSM版的项目大大减少了xml... * 提供查看IP和端口API方便进行nginx反向代理和负载均衡的部署和测试 * 分布式session共享避免了集群环境下用户登录信息失效的问题 * 5.测试页面优化

    Nginx 过滤静态资源文件的访问日志的实现

    日常使用的 Nginx 大都既做静态资源服务器,也做反向代理服务器,尤其有些时候考虑到跨域问题,会对静态资源和后端接口使用同一个监听端口,如果不做一下过滤处理,会在 access_log 中看到大量的例如 js、css、jpg ...

Global site tag (gtag.js) - Google Analytics