准备工作
1、生成证书
首先需要生成一个SSL证书,可以使用Let's Encrypt免费证书,以下是使用Certbot工具生成证书的命令:
sudo apt-get update sudo apt-get install software-properties-common sudo add-apt-repository ppa:certbot/certbot sudo apt-get update sudo apt-get install certbot python3-certbot-nginx sudo certbot --nginx -d example.com -d www.example.com
2、备份原始Nginx配置文件
在修改Nginx配置文件之前,建议先备份原始配置文件,可以使用以下命令备份:
sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/default.bak
配置HTTPS
1、编辑Nginx配置文件
使用文本编辑器打开Nginx配置文件:
sudo nano /etc/nginx/sites-available/default
2、修改配置文件内容
将以下内容添加到配置文件中,替换"your_domain"为你的域名:
server { listen 80; server_name your_domain; return 301 https://$host$request_uri; } server { listen 443 ssl; server_name your_domain; ssl_certificate /etc/letsencrypt/live/your_domain/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/your_domain/privkey.pem; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_prefer_server_ciphers on; ssl_ciphers 'EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH'; ssl_session_cache shared:SSL:10m; ssl_session_timeout 10m; ssl_session_tickets off; ssl_stapling on; ssl_stapling_verify on; add_header Strict-Transport-Security max-age=15768000; add_header X-Frame-Options DENY; add_header X-Content-Type-Options nosniff; add_header X-XSS-Protection "1; mode=block"; add_header Referrer-Policy strict-origin-when-cross-origin; add_header Content-Security-Policy "frame-ancestors 'self' https://your_domain"; add_header X-DNS-Prefetch-Control off; add_header X-Download-Options noopen; add_header X-Permitted-Cross-Domain-Policies none; location / { root /var/www/html; index index.html index.htm index.php; try_files $uri $uri/ =404; } }
3、保存并退出编辑器。
重启Nginx服务并测试HTTPS连接
1、重启Nginx服务:
sudo systemctl restart nginx
2、使用浏览器访问你的域名,确保HTTPS连接正常。
结尾
感谢阅读本文,希望对您有所帮助。如果您有任何问题或评论,请随时留言。请关注我们的博客以获取更多相关内容,并给予我们的文章点赞和分享,感谢您的观看!
评论留言