本帖最后由 WS_Daniel 于 2017-11-17 17:47 编辑
Nginx + Tomcat越来越多的中小企业采用这样的模式搭建环境和部署证书,很多用户都问我证书是部署在前端呢?还是在后端的Tomcat上。
其实只要部署在Nginx前端就可以了。(建议:先在测试环境上ok后在到正式环境搞)
粗劣搭了个环境做了一把,提供给做相应的参考。注意里面相关的参数要换成你自己环境的即可
首先:Nginx
先保证你的Nginx 80 可以正常的http访问起来,然后在做相应的配置
Nginx.conf:
# Activity:作为定义跳转到后端tomcat的应用去;“IP”和“端口”根据自己的后端的设置改动
upstream activity {
server 172.xx.xxx.xxx:9080;
}
# 以下是部署ssl证书
# HTTPS server
server {
listen 443;
server_name www.domain.com; //换成你自己的域名
ssl on;
ssl_certificate xxx.cer; //换成你自己的公钥
ssl_certificate_key xxx.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 Host $host; #主机头确保传输到后端数据的精准
proxy_set_header Cookie $http_cookie; #cookie保存数据 proxy_set_header X-Real-IP $remote_addr; #传递真实IP
proxy_pass http://activity; //这里的“prosy_pass”就是做为反向代理跳转点后面跟随的就是上面“Activity”的定义
root html;
#index index.html index.htm;
}
}
配置ok后,记得重启nginx;
以上是Nginx的前端证书配置和定义跳转后端的设置情况,接下来就是后端的Tomcat;
一样你得首先保证Tomcat的环境80可以正常的访问,至于配置方面的不就变动下端口和Nginx里面定义的跳转端口一致即可
Tomcat:Server.xml
<Connector port="9080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
配置文件中只改动了原来的“8080”换成了“8090”和前端对应
最后一样记得重启
以上前后的就都配置搞定,接下来就看看效果:
——————————————————————————————————————————————————————————————
首先我注释掉上面的 “proxy_pass” 的情况下 Nginx 默认 https 访问出来是到自己的首页 “Welcome to nginx”
那么当我启用了反向代理跳转后:如下
OK了。已经跳转到我后端的汤姆猫去了。哈哈。。
|
|
|
|
|
共 0 个关于Nginx + Tomcat 部署ssl证书反向代理模式的回复 最后回复于 2017-5-26 11:03