分两部分来说:
一、安装好SSL证书
幸亏以前装过证书,就少走弯路,直奔Let’s Encrypt。
可是,智者千虑,必有一失。忽略了Vultr官方自带证书安装,耽误不必要的时间精力。具体参考 Install Let’s Encrypt SSL on One-Click WordPress
步骤清晰明了:
1. Install Certificate
SSH to the server as root and run certbot. Here’s an example:
# certbot --nginx --redirect -d example.com -d www.example.com -m admin@example.com --agree-tos
2. Verify Automatic Renewal
Let’s Encrypt certificates are valid for 90 days. The certbot wizard updates the systemd timers and crontab to automatically renew your certificate.
- Verify the timer is active.
# systemctl list-timers | grep ‘certbot\|ACTIVATES’ - Verify the crontab entry exists.# ls -l /etc/cron.d/certbot
- Verify the renewal process works with a dry run.
# certbot renew –dry-run
安装好证书就试试http访问,正常的话域名前面有个小锁的图标,点击可以查看证书有效期。
本站测试http下安装证书ok,但是发现http不会自动跳转http,于是便着手解决,那就是第二部分内容。
二、强制HTTP跳转HTTPS
按说第一步命令已包含强制跳转
–redirect
Redirect all HTTP requests to HTTPS.
无奈只有手动解决,巧的是vultr官网也有这个问题解决办法。
Redirect HTTP Requests To HTTPS On Nginx
主要就是增加几行代码,其中加粗的是重中之重,稍后再说。
server {
listen 80;
server_name example.com www.example.com;
# Redirect all port 80 (HTTP) requests to port 443 (HTTPS).
return 301 http://example.com$request_uri;
}
以为按上面添加几行就皆大欢喜?没呢,最后还有命令,让配置文件生效。
本人用的是service nginx reload。终于搞定!
命令参考如下:
nginx -s signal
signal 的值如下:
stop:fast shutdown,快速的停止 nginx
quit:graceful shutdown,不再接受新的请求,等正在处理的请求出完成后在进行停止(优雅的关闭)
reload:reloading the configuration file,重新加载配置文件
reopen:reopening the log files,重新写入日志文件
文末补充以上操作的软硬件环境:
硬件:苹果本M1 MacBookPro 16G+1T
软件:利用vultr的官方自带终端
事后小结、一定要耐心细致,特别是命令的使用。
以上就是ssl证书安装方法(ssl有什么用)的相关内容了,更多精彩内容请关注!