作者:cqm-kk_246 | 来源:互联网 | 2023-07-10 19:27
现在项目都分拆成了几个或更多的微服务子系统,新老系统迭代时存在springmvc的模块,也存在springboot的模块,另考虑tomcat本身的压测并发上限在300-500,通过n
现在项目都分拆成了几个或更多的微服务子系统,新老系统迭代时存在springmvc的模块,也存在springboot的模块,另考虑tomcat本身的压测并发上限在300-500,通过nginx来均衡,一个tomcat只跑一个应用,或是直接springboot的jar运行,通通由nginx监听80和443端口,再转发。这样即可以增强并发,各个子模块维护更新时重启也不会相互影响。
nginx和tomcat的安装和基本配置,本文不再赘述,重点来记录下nginx+tomcat接入阿里云的ssl证书,希望对大家有所帮助。
一、下载安装证书
申请阿里云证书过程省略,通过审核发布后,点击下载证书
这里选择Nginx/Tengine,点击下载。把下载到的证书0123456789.pem和0123456789.key复制到服务$nginx$/cert/目录下
二、修改转发规则
# 强制所有http访问都转为https访问
server {
listen 80;
server_name mydomain.com; #绑定的域名
rewrite ^(.*)$ https://$host$1 permanent;
}
server {
listen 443;
server_name mydomain.com; #绑定的域名
ssl on;
ssl_certificate cert/0123456789.pem;
ssl_certificate_key cert/0123456789.key;
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
location / {
proxy_pass http://localhost:8080;
# 如果有websocket的 下面这几句后才能支持ws
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Origin "";
}
}
cmd->进入nginx目录,键入:nginx -s reload 执行重新加载配置
三、修改Tomcat的Service.xml
找到配置
添加proxyPort="8443"
redirectPort="8443" proxyPort="8443" />
在Host中添加RemoteIpValue
remoteIpHeader="x-forwarded-for"
remoteIpProxiesHeader="x-forwarded-by"
protocolHeader="x-forwarded-proto" />
重启tomcat完成配置,到这里就完成https配置。