Nginx中设置好域名的SSL解析之后,难免会与Tomcat中解析域名或访问中的80/443端口冲突。最简便的解决方案为:
Tomcat中service.xml中修改相对应的访问端口,之后配置Nginx中正常配置进行转发即可实现正常访问。
具体操作如下:
service.xml
代码语言:javascript复制// 其中的port、redirectPort是需要修改的值
<Connector port="8099" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
nginx.conf
代码语言:javascript复制一、按照如下格式修改nginx.conf 配置文件,80端口会自动转给443端口,这样就强制使用SSL证书加密了。访问http的时候会自动跳转到https上面。
server {
listen 80;
server_name www.域名.com;
rewrite ^(.*) https://$server_name$1 permanent;
}
server {
listen 443;
server_name www.域名.com;
root /home/www;
ssl on;
ssl_certificate /etc/nginx/certs/server.crt;
ssl_certificate_key /etc/nginx/certs/server.key;
}
二、修改配置文件后,重启nginx。