nginx 代理非标准端口tomcat https

教程分享 > nginx教程 (1436) 2024-04-17 10:24:28

前置说明,项目配置了个全局PATH,估计是为了方便复杂环境单容器多项目部署用的老项目配置方式

var PATH = [[${#httpServletRequest.getScheme() + "://" + #httpServletRequest.getServerName() + ":" + #httpServletRequest.getServerPort() + #httpServletRequest.getContextPath()}]];

导致普通的网上找的总是缺1或缺2的感觉,下面是整合好的一份配置说明

nginx 配置

server {
        listen 8100 ssl;
        server_name xxx.top;
        #ssl on;
        #从腾讯云获取到的第一个文件的全路径
        ssl_certificate /opt/docker/acme.sh/out/issue/xxx.pem;
        #从腾讯云获取到的第二个文件的全路径
        ssl_certificate_key /opt/docker/acme.sh/out/issue/xx.key.pem;

    location / {
                #proxy_set_header       Host $host;
                #非标准端口下面这个配置很重要
                proxy_set_header Host $host:$server_port;
                proxy_set_header  X-Real-IP  $remote_addr;
                proxy_set_header  X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_set_header X-Forwarded-Proto  $scheme;
                #非标准端口下面这个配置很重要
                proxy_set_header X-Forwarded-Port $server_port;

                proxy_pass http://192.168.0.151:8100;
        }

}


spring boot 项目tomcat配置

server:
    # 配置项目端口
    port: 8000
    tomcat:
        remoteip:
            protocol-header: X-Forwarded-Proto
            remote-ip-header: X-Forwarded-For
            protocol-header-https-value: https


主要的是remoteip 节点下面的这三个必须配置

如果tomcat是独立部署的,则修改tomcat的配置文件Engne以下片段

<Valve className="org.apache.catalina.valves.RemoteIpValve"
                remoteIpHeader="x-forwarded-for"
                remoteIpProxiesHeader="x-forwarded-by"
                protocolHeader="x-forwarded-proto"
                protocolHeaderHttpsValue="https"
                httpsServerPort="8443"/>

 

 

 


 

 

 

 

https://www.leftso.com/article/1091.html

相关文章
前置说明,项目配置了个全局PATH,估计是为了方便复杂环境单容器多项目部署用的老项目配置方式var PATH = [[${#httpServletRequest.getScheme() + ":...
nginx常规使用时作为http协议的反向代理,这里要讲的是非http的Mysql端口代理,理论支持其他协议nginx.conf配置如下:user nginx; worker_process...
nginx代理Tomcat带路径的项目location / {                 proxy_pass http://localhost:8080/v1/;          ...
nginx日志默认格式如下:$remote_addr-$remote_user[$time_local]"$request"$status$body_bytes_sent"$http_refer...
Linux(centos) nginx安装和nginx入门配置方法1.切换至root用户$su - 2.执行在线安装命令#yum install nginx -y 如果上面提示以下内容[root...
在全站升级https后,突然发现某些接口暂时不能直接重定向
centos 6 nginx+php7环境配置 做一记录,谨防采矿 $title(php.conf) # # The default server # server { l...
1.新增nginx屏蔽配置文件文件暂时为/etc/nginx/conf.d/deny_ua.config说明:文件名deny_ua.config,后缀为.config非.conf,原因是.con...
最近网站被恶意访问了,了解了一些基础防护手段,nginx屏蔽ua访问 编写文件agent_deany.conf #使用方法 #创建目录 /etc/nginx/conf.d/deny...
nginx开启gzip压缩配置配置参考:server{listen443ssl;server_namet.example.com;#charsetkoi8-r;#access_log/var/l...
最近博客升级总是nginx原生的502页面,感觉有些不友好,特此研究了下502页面的配置nginx 502配置502页面核心配置 #502 page error_...
场景描述某些情况下有些资源需要一个基本的认证才能让用户访问
alpineLinux安装nginx更新软件apkupdate安装nginxapkaddnginx查看nginx版本nginx-vnginx启停启动停止servicenginxstop重启ser...
配置参考//....其他忽略....location / { proxy_set_header X-Real-IP $remote_addr; proxy_se
打开任务管理器发现一大堆nginx进程