34人参与 • 2025-02-14 • https
公司本来有网站是http运行的,但因为产品出海,基本上都要求使用https,但又需要兼容已有的http服务,所以我自己尝试做了一次https的部署,目前是正常可用的。
使用 nginx 部署 https 是确保网站安全的一项重要措施。
以下是如何使用 nginx 部署 https 的详细步骤,包括获取 ssl 证书、配置 nginx 和测试配置。
如果尚未安装 nginx,请先安装 nginx。
在 debian/ubuntu 系统上:
sudo apt update sudo apt install nginx
在 centos/rhel 系统上:
sudo yum install epel-release sudo yum install nginx
因为我们的网站是部署在腾讯云上的,原来腾讯云是一次可以申请一年的免费证书,从2024年4月25日起只能3个月了,这个确实太恶心了。
主要是不想折腾了,花了99元一年买了一年的证书服务。
具体的证书购买方式就不描述了,有钱买证书哪都可以,以下是我们购买证书的地方。
如果你已经有 ssl 证书文件(例如从其他 ca 获取的证书),可以手动配置 nginx。
将你的 ssl 证书文件和私钥文件上传到服务器。通常,它们存放在 /etc/ssl/certs/
和 /etc/ssl/private/
目录中。
编辑 nginx 配置文件。打开你的网站配置文件(例如 /etc/nginx/sites-available/default
或 /etc/nginx/nginx.conf
),并添加如下内容:
1. listen 443 ssl 这行可以让http和https都可以使用
2. ssl_certificate /etc/ssl/certs/yourdomain.com.crt;
ssl_certificate_key /etc/ssl/private/yourdomain.com.key;
上面两行是主要的证书的配置,其他的没发现什么需要注意的。
server { listen 80; server_name yourdomain.com www.yourdomain.com; # redirect http to https location / { return 301 https://$host$request_uri; } } server { listen 443 ssl; server_name yourdomain.com www.yourdomain.com; ssl_certificate /etc/ssl/certs/yourdomain.com.crt; ssl_certificate_key /etc/ssl/private/yourdomain.com.key; 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; } }
在重新加载 nginx 之前,先测试配置文件是否有语法错误:
sudo nginx -t
如果配置正确,重新加载 nginx:
sudo systemctl reload nginx
打开浏览器,访问 https://www.sqlynx.com
,确保网站通过 https 正常加载,并且 ssl 证书有效。
通过以上步骤,你应该已经成功地在 nginx 上部署了 https。使用 https 可以有效地保护用户数据,提升网站的安全性和可信度。如果你有更多的定制需求,可以参考 nginx 官方文档进行进一步的配置和优化。
到此这篇关于nginx部署https网站的实现步骤(亲测)的文章就介绍到这了,更多相关nginx部署https内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!
您想发表意见!!点此发布评论
版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。
发表评论