专栏首页tiane12解决Nginx转发http后不走https的问题 后端tomcat

解决Nginx转发http后不走https的问题 后端tomcat

最近开发一个项目,在正式部署上线后,发现图片地址应该为https的,却变为了http,没有走SSL。

服务部署是常规的NginX + Tomcat结构,NginX在公网走HTTPS,NginX与Tomcat在内网走http通信。在查看了后台Java代码后,发现URL拼接的语句协议是通过request.getScheme()获取的,通常在NginX的location块中添加

proxy_set_header X-Forwarded-Proto $scheme;

即可,但添加时候发现仍然位http,本想通过修改java代码解决,但这种方法不够完美。经过一番查找,发现可以通过修改tomcat配置文件解决。

在tomcat的server.xml中Engine模块下增加如下代码:

<Valve className="org.apache.catalina.valves.RemoteIpValve" remoteIpHeader="X-Forwarded-For" protocolHeader="X-Forwarded-Proto" protocolHeaderHttpsValue="https"/>

保存后即可

最终NginX的location部分配置如下:

location ~ /zhxy/mobile/ {
proxy_set_header Host $host:$server_port;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://127.0.0.1:6701;
index index.html index.htm;
}

问题完美解决。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 从宝塔迁移的php应用报500错误解决

    最近把一个项目从宝塔的LNMP环境迁移到LAMP环境下,也就是Nginx换到了Apache下,其他PHP版本、MYSQL版本都没变,结果网站莫名其妙的报500错...

    用户2134503
  • 记一次由Oracle引起的No space left on device问题

    一大早有用户反映,系统登录不上去。我马上用手机看了一眼,数据库连接失败。我们这台数据库是最新迁移的一台独立的数据库服务器。

    用户2134503
  • war包部署到tomcat8.0后中文乱码问题

    本来不该有这个问题,但因为我们的服务器用着GB2312的字符集,所以出现了该问题。

    用户2134503
  • Nginx——ubuntu安装Nginx并配置https

    介绍: 我们在部署应用时,希望用到 Nginx ,并配置上 https 。我在网上看了很多文章,感觉都不是很系统。因此写下此文,以备日后使用。

    凡人飞
  • Mac 安装nginx

    相关问题处理 查看端口占用: lsof -i: 端口 kill -9 PID

    OPice
  • 都是Nginx前缀惹的祸,FastDFS不能访问了!!

    作者个人研发的在高并发场景下,提供的简单、稳定、可扩展的延迟消息队列框架,具有精准的定时任务和延迟队列处理功能。自开源半年多以来,已成功为十几家中小型企业提供了...

    冰河
  • AppNode面板网站管理搭建反向代理 Linux 面板 AppNode Ng

    奇梦
  • Nginx通过二级目录(路径)映射不同的反向代理,规避IP+端口访问

    这是我上一家公司的案例总结,发现躺在草稿箱好几个月了,今天得空就整理发布一下。 先说一下开发那边提来的 2 个 case: ①、同一个域名需要反向代理到前台和后...

    张戈
  • nginx获取客户端请求的真实IP

    客户端通过nginx代理访问后端tomcat服务器时,后端服务器收到的请求信息中只有nginx代理的IP信息,无法看到client的真实IP,

    Java架构师历程
  • nginx websocket socket.io 400 错误

    https://www.cnblogs.com/pangyangqi/p/9711317.html

    小贝壳

扫码关注云+社区

领取腾讯云代金券