- 浏览: 509127 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (156)
- xml (4)
- web前端 (24)
- jQuery (18)
- java (38)
- SQL (9)
- perl (2)
- OTRS (1)
- GWT (4)
- Linux (32)
- Maven (2)
- Spring (2)
- Oracle Win7 (1)
- css (8)
- eclipse (3)
- mysql (11)
- tomcat (5)
- git (4)
- javascript (22)
- font (1)
- android (1)
- log4j (1)
- email (1)
- sublime plugin (1)
- html (2)
- matches (1)
- php (3)
- apache (3)
- gd (1)
- docker (5)
- rails (1)
- RabbitMQ (1)
- Ubuntu (3)
- L2TP VPN (1)
- nodejs (1)
- oraclejet (1)
- ubutun (1)
- ntp (1)
- ngix (1)
- ssl (1)
- https (1)
- Linux,Debian (2)
- dpkg (1)
- pac (1)
- vi (1)
- vim (1)
- java,http (0)
- httpClient (0)
- shutter (1)
- shell (1)
- redmine (1)
最新评论
-
纵观全局:
配置之后,连接显示不是私密连接
keytool生成证书与Tomcat SSL配置 -
zhuchao_ko:
可以 伪造
java获得ip地址 -
longhua2003:
代码太乱了
java下载文件 -
tomhat:
ccx410 写道 安装gwt报错,unable to ret ...
GWT CellTable -
ccx410:
安装gwt报错,unable to retrieve osgi ...
GWT CellTable
最终配置的方案是浏览器和 Nginx 之间走的 HTTPS 通讯,而 Nginx 到 Tomcat 通过 proxy_pass 走的是普通 HTTP 连接。
下面是详细的配置(Nginx 端口 80/443,Tomcat 的端口 8080):
Nginx 这一侧的配置没什么特别的:
其中最为关键的就是 ssl_certificate 和 ssl_certificate_key 这两项配置,其他的按正常配置。不过多了一个 proxy_set_header X-Forwarded-Proto https; 配置。
最主要的配置来自 Tomcat,下面是我测试环境中的完整 server.xml:
上述的配置中没有什么特别的,但是特别特别注意的是必须有 proxyPort="443",这是整篇文章的关键,当然 redirectPort 也必须是 443。同时 <Value> 节点的配置也非常重要,否则你在 Tomcat 中的应用在读取 getScheme() 方法以及在 web.xml 中配置的一些安全策略会不起作用。
下面是详细的配置(Nginx 端口 80/443,Tomcat 的端口 8080):
Nginx 这一侧的配置没什么特别的:
upstream tomcat { server 127.0.0.1:8080 fail_timeout=0; } # HTTPS server server { listen 443 ssl; server_name localhost; ssl_certificate /Users/winterlau/Desktop/SSL/oschina.bundle.crt; ssl_certificate_key /Users/winterlau/Desktop/SSL/oschina.key; ssl_session_cache shared:SSL:1m; ssl_session_timeout 5m; ssl_ciphers HIGH:!aNULL:!MD5; ssl_prefer_server_ciphers on; location / { proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_set_header X-Forwarded-Proto https; proxy_redirect off; proxy_connect_timeout 240; proxy_send_timeout 240; proxy_read_timeout 240; # note, there is not SSL here! plain HTTP is used proxy_pass http://tomcat; } }
其中最为关键的就是 ssl_certificate 和 ssl_certificate_key 这两项配置,其他的按正常配置。不过多了一个 proxy_set_header X-Forwarded-Proto https; 配置。
最主要的配置来自 Tomcat,下面是我测试环境中的完整 server.xml:
<?xml version='1.0' encoding='utf-8'?> <Server port="8005" shutdown="SHUTDOWN"> <Service name="Catalina"> <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="443" proxyPort="443"/> <Engine name="Catalina" defaultHost="localhost"> <Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true"> <Valve className="org.apache.catalina.valves.RemoteIpValve" remoteIpHeader="x-forwarded-for" remoteIpProxiesHeader="x-forwarded-by" protocolHeader="x-forwarded-proto" /> <Context path="" docBase="/oschina/webapp" reloadable="false"/> </Host> </Engine> </Service> </Server>
上述的配置中没有什么特别的,但是特别特别注意的是必须有 proxyPort="443",这是整篇文章的关键,当然 redirectPort 也必须是 443。同时 <Value> 节点的配置也非常重要,否则你在 Tomcat 中的应用在读取 getScheme() 方法以及在 web.xml 中配置的一些安全策略会不起作用。
发表评论
-
Anolis安装DDE桌面
2021-11-02 11:26 1328如何在Anolis OS中安装部署DDE 1、下载Anoli ... -
构建mysqlRPM安装包
2019-03-20 18:57 635构建环境 yum -y groupinstall " ... -
Linux下常用压缩格式的压缩与解压方法
2017-03-07 18:57 430.tar 解包: tar xvf FileNam ... -
vi或vim编辑器的常用命令
2016-09-23 20:27 725插入恢复操作 i 当前插入 I 行首插入 a 当前后插入 A ... -
PAC 一个通CRT相同功能的工具
2016-08-11 09:29 873Ubuntu安装PAC wget http://sourc ... -
ubuntu搭建NTP服务器
2016-06-20 10:45 1975由于公司架构需求部分服务器走内部网络,这部分服务器均无外部网络 ... -
搭建docker私有仓库registry
2016-06-08 18:34 58311、操作系统 ubuntu 14.04 x64 2、安装do ... -
linux fdisk 命令 磁盘划分新的分区及挂载
2016-06-08 11:32 7058今天VirualBox中的Ubuntu进不了系统,用guest ... -
RabbitMQ 在ubuntu下安装脚本
2016-04-28 08:37 983最近公司要安装RabbiMQ,于是写了这段代码: 新建文件i ... -
Ubuntu下安装kate编辑器
2016-04-22 15:55 2675Ubuntu 下安装kate编辑器 #sudo apt- ... -
Linux开放端口,关于linux系统端口查看
2016-03-25 16:47 4285查看关于linux系统端口 $ netstat -tln ... -
修改Linux时区,同步时间
2016-03-25 16:42 2636时区设置: 开始设置时区时,参考网上的资料,使 ... -
tomcat部署时绑定域名
2016-03-08 15:02 4316tomcat部署多个web项目,并且绑定不同域名需修改conf ... -
Linux命令行下安装Maven与配置
2016-03-08 11:12 3871Apache Maven,是一个软件(特别是Java软件)项目 ... -
卸载apt-get安装的mysql
2016-03-04 09:32 1074删除 mysql 1 sudo apt-get auto ... -
Linux 下也可以使用RAR了
2016-01-28 13:15 815在Linux上要想解压.rar文 ... -
tar压缩解压缩命令详解
2016-01-28 11:03 1142tar命令详解 -c: 建立压缩档案 -x:解压 ... -
安装git报错Perl5
2015-05-12 15:53 1415今天在centos 中安装git ... -
解决宿主机不能访问虚拟机CentOS中的站点 | 更新CentOS防火墙设置开启80端口访问
2015-04-24 18:59 26061、本机能ping通虚拟机2、虚拟机也能ping通本机3、虚拟 ... -
关于Ubuntu下apt的一些用法及和yum的比较
2015-04-24 09:55 1398Fedora和Red Hat有yum安装软件,Ubuntu ...
相关推荐
这个"ngix + mysql + php 安装包"提供了便捷的一站式解决方案,尤其适合初学者,免去了繁琐的配置过程。 **Nginx** 是一个高性能的HTTP和反向代理服务器,以其轻量级、高并发处理能力而闻名。它的事件驱动模型和非...
redis,redis,tomcat集群实例,tomcat-session-jar文件夹下是需要的jar包,启动nginx,redis,tomcat后在浏览器中输入http://localhost/test/test2.jsp进行测试。
今天,王子与大家闲谈一下如何在Windows下使用Nginx+Tomcat做负载均衡的完整步骤,小伙伴们可以试着自己动手实践一下哦。 另外说明一点,本篇文章是纯实操文章,不涉及太多原理的解读,后期可能单独开一个专栏来深入...
ngix tomcat整合.zip
ngix tomcat整合
"Tomcat+Nginx+MyBatis+Redis"的整合就是一个典型的案例,它利用了Tomcat作为Java应用服务器,Nginx作为反向代理和负载均衡器,MyBatis作为持久层框架,以及Redis作为高速缓存系统。 一、部署启动多个Tomcat 1. ...
2. 修改Tomcat配置文件:`/opt/tomcat/conf/server.xml`,添加多个节点,每个节点对应一个Tomcat实例。 ```xml <Host name="tomcat1.example.com" appBase="webapps1" unpackWARs="true" autoDeploy="true"> <!-- ...
本压缩包提供了"tomcat+redis+nginx"集群搭建所需的jar包,旨在帮助开发者实现高效的数据缓存和负载均衡。以下将详细讲解这些组件及它们在集群中的作用。 1. **Tomcat**:Tomcat是Apache软件基金会的Jakarta项目中...
在构建分布式系统时,Session共享是一个关键问题,特别是在使用多个应用服务器(如Tomcat)和负载均衡器(如Nginx)的环境中。本配置主要针对"tomcat8+nginx1.14+jdk8"的环境,目的是实现Session数据在多台Tomcat...
宝塔面板Tomcat,Ngix等文件配置以及设置记录
upstream local_tomcat_wechat{ server 127.0.0.1:80 weight=2 fail_timeout=1s; } server { listen 443; server_name www.xxxx.com; error_log /nginx/log/www.xxxx.com.error.log warn; ssl on; ...
它内置了Tomcat或Jetty服务器,可以无需额外配置即可运行。SpringBoot通过“约定优于配置”的原则,减少了大量Spring应用的XML配置。同时,它提供了丰富的起步依赖(Starter POMs),开发者只需引入相应的依赖,就...
ngix-1.8.0下载,windows版本,使用方法:解压该文件夹,进入config文件下的nginx.conf,将其中的tomcat端口更改为目前正在使用的tomcat端口,location改为目前项目的html项目路径即可
上面的配置定义了一个名为csdn-tomcat的服务器组,其中包含了两个Tomcat服务器的地址。 ### 首页重定向配置 在Nginx配置文件中,server块用于定义Nginx监听的端口和域名。通过配置server块,可以实现对特定域名的...
在实际应用中,Nginx常与PHP-FPM(FastCGI Process Manager)或其它应用服务器(如Apache、Tomcat)配合,形成LAMP(Linux + Apache + MySQL + PHP)或LEMP(Linux + Nginx + MySQL + PHP)架构,实现动态内容的处理...
我一般都是使用 nginx 做反向代理 tomcat 和其他应用的,其实 nginx 也是支持正向代理的 所谓正向代理就是内网用户通过网关访问外部资源,就是电脑上网时浏览器设置下 http 代理地址访问互联网 而反向代理就是外部...