Nginx + Tomcat HTTPS配置

HTTPS证书申请
  • 生成证书请求文件CSR,将私钥文件保存到本地,如/data/web/crt/server.key
  • 提交CSR,申请证书
  • 获取服务器证书,将Email中的SSL证书文本段和中级证书文本段依次粘贴到服务器证书文件,如/data/web/crt/server.cer中
配置Nginx,使其支持HTTPS
  • 编辑希望使其支持HTTPS的虚拟主机配置文件,如nginx/conf/vhosts/mydomain.conf
    添加/修改以下配置段:
server { // 此配置段将HTTP请求全部重定向为HTTPS请求
    listen 80;
    server_name admin.mobile.upay360.cn;
    rewrite ^(.*) https://$server_name$1 permanent;
}
server {
    #listen 80; //如果希望网站同时支持HTTP和HTTPS访问,则不要注释此行,并将下面的ssl on注释掉。
    listen 443 ssl;
    server_name  admin.mobile.upay360.cn;
    index index.jsp;

    ssl on;
    ssl_certificate /home/server.cer; 
    ssl_certificate_key /home/server.key;
    #ssl_session timeout 5m;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
    ssl_prefer_server_ciphers on;

    location / {
         proxy_pass http://mobile_admin;
         proxy_set_header  X-Forwarded-For  $proxy_add_x_forwarded_for;
         proxy_set_header  X-Real-IP  $remote_addr;
         proxy_set_header  Host $http_host;
         proxy_next_upstream     timeout;
         proxy_connect_timeout  300;
    }
    access_log /data/web/nginx/logs/access.log my;
}
  • 使用nginx/sbin/nginx -s reload 重启nginx
  • 此时https已同时对nginx和tomcat生效
配置Tomcat,禁止Tomcat直接响应非本机HTTP请求
  • 修改tomcat/conf/server.xml,在前添加下面行
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127.0.0.1" deny=""/>
  • 修改后,Tomcat仅允许来自本机nginx的反向代理请求
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Windows系统中,配置NginxTomcat项目需要进行以下详细配置。 首先,要确保已经正确安装并配置NginxTomcat。然后,在Nginx配置文件(一般为nginx.conf)中,需要进行如下配置: 1. 配置NginxTomcat的反向代理关系。可以在Nginx的http部分中加入如下代码: ``` location / { proxy_pass http://localhost:8080; proxy_redirect off; 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; } ``` 这里将Nginx的80端口与Tomcat的8080端口建立反向代理关系。 2. 配置虚拟主机。如果需要配置多个Tomcat项目,可以通过虚拟主机来实现。在Nginx的http部分中添加如下代码: ``` server { listen 80; server_name your_domain_name; location / { proxy_pass http://localhost:8080; proxy_redirect off; 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; } } ``` 这里的"your_domain_name"替换为你的域名,配置不同的域名可以区分不同的Tomcat项目。 接下来,需要配置Tomcat的服务器。在Tomcat的server.xml中,进行如下配置: 1. 配置连接器。添加如下代码: ``` <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" /> ``` 这里的端口号可以根据需要进行调整。 2. 配置虚拟主机。如果需要配置多个Tomcat项目,可以通过虚拟主机来实现。添加如下代码: ``` <Host name="your_domain_name" appBase="webapps" unpackWARs="true" autoDeploy="true"> <Context path="" docBase="your_application_path" /> </Host> ``` 这里的"your_domain_name"替换为你的域名,"your_application_path"替换为你的项目路径。 配置完成后,保存文件并重新启动NginxTomcat。现在,Nginx将可以通过80端口访问Tomcat项目,而Tomcat将通过8080端口提供服务。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值