在CentOS系统中配置Nginx以实现全站HTTPS,你需要完成以下几个步骤:
获取SSL证书:
安装和配置Nginx:
/etc/nginx/nginx.conf
或/etc/nginx/conf.d/
目录下的某个文件。配置HTTP重定向到HTTPS:
配置HTTPS服务器:
以下是一个示例配置:
# HTTP重定向到HTTPS
server {
listen 80;
server_name yourdomain.com www.yourdomain.com;
location / {
return 301 https://$host$request_uri;
}
}
# HTTPS服务器配置
server {
listen 443 ssl;
server_name yourdomain.com www.yourdomain.com;
# SSL证书路径
ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers HIGH:!aNULL:!MD5;
# 其他配置...
root /var/www/html;
index index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
# 其他location配置...
}
安装Certbot:
sudo yum install epel-release
sudo yum install certbot python2-certbot-nginx
获取SSL证书:
sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com
按照提示完成证书的获取和配置。
自动续期证书: Certbot会自动设置一个cron任务来定期续期证书。你可以手动测试续期:
sudo certbot renew --dry-run
重启Nginx: 每次修改Nginx配置文件后,都需要重启Nginx以应用更改:
sudo systemctl restart nginx
通过以上步骤,你就可以在CentOS系统上配置Nginx以实现全站HTTPS。确保你的防火墙允许443端口的流量,并且定期检查证书的有效期,以确保网站的安全性。