nginx做SSL并配合tomcat实现HTTPS访问
来源:互联网 发布:打印机无法配置该端口 编辑:程序博客网 时间:2024/05/21 06:21
1、确认已安装openssl服务,使用 rpm -qa | grep -i openssl 来检查是否安装,如果没有安装以及其相关如openssl-devel,那么就去http://rpm.pbone.net/搜索并下载,通过rpm -ivh xxx.rpm安装,当然如果能yum安装最好,yum安装就是在线安装,rpm理解为离线安装。
2、安装nginx,nginx可以用源码安装,记得./configure --prefix=/usr/local/nginx --with-http_ssl_module。--with-http_ssl_module表示支持SSL。
3、创建证书:
mkdir /etc/nginx/ssl
cd /etc/nginx/ssl
openssl genrsa -des3 -out server.key 1024
openssl req -new -key server.key -out server.csr
最重要的一行是“Common Name”。在这里输入您的官方网域名称,如果您还没有,请输入您网站的IP位址。将挑战密码和可选的公司名称留空。
删除密码:
cp server.key server.key.org
openssl rsa -in server.key.org -out server.key
签署证书
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
4、配置nginx配置文件:
upstream aaa {
ip_hash; #这个配置是nginx的一种策略,对于那种没有做session共享的应用使用,就比如浏览器一开始访问那个tomcat,那么该tomcat的sessionid就给浏览器,下次访问时,还会到这个tomcat上,只有当这个tomcat挂了,那么这个浏览器才会要求用户重新登录。
server 127.0.0.1:18080;
server 127.0.0.1:28080;
}
server {
listen 443 ssl;#开启HTTPS访问
server_name 192.168.101.177;#这个是keepalived生成的虚拟IP
ssl_certificate /etc/nginx/ssl/server.crt;#前面生成的证书
ssl_certificate_key /etc/nginx/ssl/server.key; #前面生成的证书
location /xxx {#工程名,注意如果应用必须带工程名,那么工程名只能写到这,而不能写到127.0.0.1:18080/xxx那边,会报错
proxy_pass http://aaa; 这里的aaa就是上面upstream的aaa
#配置 Nginx 的转发选项
proxy_set_header HOST $host; #其中Host $host:$server_port; 非80端口 要port。用80端口时 不需要$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;
}
}
server {
listen 80;
server_name 192.168.101.177;
rewrite ^(.*) https://$server_name$1 permanent;强制重定向到https服务
location /xxx {
proxy_pass http://aaa;
proxy_set_header HOST $host;
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;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
5、配置tomcat的server.xml
在Engine 模块下配置一个 Value:
- nginx做SSL并配合tomcat实现HTTPS访问
- Nginx + 阿里云SSL + tomcat 实现https访问代理
- Nginx + 阿里云SSL + tomcat 实现https访问代理
- Nginx + 阿里云SSL + tomcat 实现https访问代理
- Tomcat实现HTTPS&SSL访问
- Nginx配置SSL实现Https访问
- Nginx SSL+Tomcat https
- 本地Tomcat配置ssl 实现https访问
- Nginx配置SSL证书实现访问HTTPS网站
- nginx配置ssl证书实现https和http共存访问
- Nginx下配置网站ssl实现https访问
- Nginx下配置网站ssl实现https访问
- nginx反向代理tomcat的ssl(https)实现
- Nginx(Https) + Tomcat 启用 Https(SSL) 支持
- Tomcat 配置阿里的ssl安全证书,实现https访问
- nginx 配置ssl 实现https
- nginx配置SSL的https访问
- Nginx+Tomcat 7 to support SSL(HTTPS)
- java-第5天
- 09全志r40m平台的SATA验证(分色排版)
- 《剑指offer》面试题17:打印从1到最大的n位数
- hadoop 更换数据目录
- hdu 1516 String Distance and Transform Process(编辑距离+记录路径)
- nginx做SSL并配合tomcat实现HTTPS访问
- 图像标注教程(使用LabelImg标注工具)
- asp.net数据库操作时出现错误 其他信息: 基础提供程序在 Open 上失败。
- Milking Cows 挤牛奶--贪心
- 【设计模式】(6)--最常用模式之观察者模式
- Photoshop中的一些简单操作及图片制作
- SSM POI---导出(含工具类)
- C#创建不规则窗体(窗口)的几种方式
- 集体智慧编程