【Linux】服务器Tomcat、nginx更换ssl证书,使用https,

Linux服务器Tomcat、nginx更换ssl证书,使用https

一、问题出现的原因

需要更换的是小程序的后台,因为小程序只能允许https协议,小程序已经发布一段时间了,本来是有https的,但是时间过长,https过期了,使用的ssl证书是不能续费的,只能重新购买然后配置,

问题一:
我自己是用过pfx格式的证书的,所以本来以为是没有什么难度的,但是这个项目的ssl证书是一个已经走了的大佬配置的,我上服务器后发现Tomcat中根本没有证书文件,而且server.xml 也没有相关的路径配置,就直接懵神了。

解决方案:
通过不断的搜索,我发现这个Tomcat确实没有任何ssl相关的配置,我就感觉应该是Tomcat之外的东西决定了这个配置,然后发现了nginx这歌东西,这个是我第一次见,因为是做前端的,服务器本来就不熟悉,但是搜索发现这个是类似域名转发ip加端口的一个东西,再结合我没有设置该项目为默认端口,但是值通过域名也可进入,我认为就是这个东西,通过查询nginx占用端口,找到了nginx的安装位置,
从安装位置的配置中,果然找到了相关证书,
然后搜索nginx如何配置,看阿里云详细步骤,在不断的找博客学习,终于完成修改,使用平滑重启,
小程序可正常使用,可算是完成了,

借鉴博客
1.查找目录

ps -ef | grep nginx

借鉴博客:
https://blog.csdn.net/weixin_30709809/article/details/96555266

2.相关配置
借鉴博客:
https://blog.csdn.net/a_18397219871/article/details/79470728
https://www.cnblogs.com/onetwo/p/10369644.html

3.nginx相关操作
启动重启等,借鉴博客:
https://www.cnblogs.com/kenshinobiy/p/9118010.html
https://www.cnblogs.com/tuanz/p/8709254.html

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
对于问题(1),您可以按照以下步骤配置Linux2为Nginx服务器,并设置默认文档index.html的内容为"hellonginx",同时只允许使用域名访问和自动跳转到https: 1. 安装Nginx: ``` sudo apt-get update sudo apt-get install nginx ``` 2. 配置Nginx: 打开Nginx配置文件: ``` sudo nano /etc/nginx/nginx.conf ``` 在http块中添加以下配置: ``` server { listen 80; server_name your_domain.com; return 301 https://$host$request_uri; } server { listen 443 ssl; server_name your_domain.com; ssl_certificate /etc/nginx/ssl/your_domain.com.crt; ssl_certificate_key /etc/nginx/ssl/your_domain.com.key; location / { root /var/www/html; index index.html; } } ``` 将"your_domain.com"替换为您的域名。ssl_certificate和ssl_certificate_key的路径应指向您的SSL证书和私钥文件。 3. 创建默认文档index.html: ``` sudo nano /var/www/html/index.html ``` 将以下内容粘贴到文件中并保存: ``` hellonginx ``` 4. 启动Nginx服务: ``` sudo systemctl start nginx ``` 现在,Linux2将作为Nginx服务器进行配置,只允许使用域名访问,并自动将http请求重定向到https,并且默认文档index.html的内容为"hellonginx"。 对于问题(2),您可以按照以下步骤使用Nginx作为反向代理实现Linux3和Linux4的Tomcat负载均衡,并通过https://tomcat.skills.lan进行加密访问,同时http访问会自动跳转到https: 1. 安装Nginx: 请确保您已经在Linux2上安装了Nginx(按照问题(1)中的步骤进行安装)。 2. 配置Nginx: 打开Nginx配置文件: ``` sudo nano /etc/nginx/nginx.conf ``` 在http块中添加以下配置: ``` upstream tomcat { server linux3:8080; server linux4:8080; } server { listen 80; server_name tomcat.skills.lan; return 301 https://$host$request_uri; } server { listen 443 ssl; server_name tomcat.skills.lan; ssl_certificate /etc/nginx/ssl/your_domain.com.crt; ssl_certificate_key /etc/nginx/ssl/your_domain.com.key; location / { proxy_pass http://tomcat; 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.com"替换为您的域名。ssl_certificate和ssl_certificate_key的路径应指向您的SSL证书和私钥文件。同时,将"linux3"和"linux4"替换为您的Linux3和Linux4服务器的主机名或IP地址。 3. 启动Nginx服务: ``` sudo systemctl start nginx ``` 现在,您可以通过https://tomcat.skills.lan加密访问Tomcat,并且http访问将自动跳转到https。 对于问题(3),您可以按照以下步骤配置Linux3和Linux4作为Tomcat服务器,并设置网站的默认首页内容分别为"tomcatA"和"tomcatB",同时仅允许使用域名访问80端口的http和443端口的https,并且证书路径均为/etc/ssl/skills.jks: 1. 安装Tomcat: 请确保您已经在Linux3和Linux4上安装了Tomcat。 2. 配置Tomcat: 打开Tomcat配置文件: ``` sudo nano /path/to/tomcat/conf/server.xml ``` 将以下内容添加到<Host>标签中: ``` <Context path="" docBase="/var/www/html/tomcatA" /> ``` 将以下内容添加到<Host>标签中: ``` <Context path="" docBase="/var/www/html/tomcatB" /> ``` 保存并关闭文件。 3. 创建网站默认首页: ``` sudo nano /var/www/html/tomcatA/index.html ``` 将以下内容粘贴到文件中并保存: ``` tomcatA ``` 创建另一个文件: ``` sudo nano /var/www/html/tomcatB/index.html ``` 将以下内容粘贴到文件中并保存: ``` tomcatB ``` 4. 配置Nginx: 打开Nginx配置文件: ``` sudo nano /etc/nginx/nginx.conf ``` 在http块中添加以下配置: ``` server { listen 80; server_name your_domain.com; return 301 https://$host$request_uri; } server { listen 443 ssl; server_name your_domain.com; ssl_certificate /etc/nginx/ssl/your_domain.com.crt; ssl_certificate_key /etc/nginx/ssl/your_domain.com.key; location / { proxy_pass http://localhost:8080; 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.com"替换为您的域名。ssl_certificate和ssl_certificate_key的路径应指向您的SSL证书和私钥文件。 5. 启动Nginx服务: ``` sudo systemctl start nginx ``` 现在,Linux3和Linux4将作为Tomcat服务器进行配置,网站的默认首页内容分别为"tomcatA"和"tomcatB",仅允许使用域名访问80端口的http和443端口的https,并且证书路径均为/etc/ssl/skills.jks。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值