# nginx 配置 https {#nginx-配置-https}
本文讲述 nginx 支持 https 访问的配置方法。大部分网站提供的是基于 http 的 web 服务,但是这样我们的网站内容可能会被第三方运营商劫持并非法篡改我们的页面,如向页面注入广告代码等,这种现象已经很普遍,而且举报也没用,运营商并不会承认他们的流氓行为。为了解决这个问题,我们可以采用 https 加密传输。https 证书有收费的也有免费证书,选用免费证书即可。
不再推荐本文采用的方法,本文描述的方法需要借助第三方网站,步骤繁琐。如今有更优的方案,无需借助第三方网站,且支持证书自动续期。详见nginx 的 https 证书自动续期
提示
建议申请支持泛域名的 https 证书, 当拥有很多 3 级域名的时候, 会减少很多工作量
# 申请 https 证书 {#申请-https-证书}
证书有收费的,也有免费的。但是免费的足够用,也很稳定,推荐使用。
# 访问freessl (opens new window) {#访问freessl}
免费的证书:
- TRUST ASIA
有效期 1 年,支持双域名 - Let's Encrypt V2
有效期 3 个月, 支持通配符,即泛域名
虽然比"TRUST ASIA"的有效期短,但是支持泛域名,这样可以为以后带来便利。否则,以后每次新增一个 3 级域名,都需要重复走一遍申请流程。
# 验证 {#验证}
# 下载证书文件 {#下载证书文件}
# 配置 https 证书 {#配置-https-证书}
在 server 指令下增加如下配置
#https端口
listen 443 ssl;
#https的证书配置, 按自身情况改为实际路径
ssl_certificate /etc/nginx/cert/_.sofineday.com.full_chain.pem;
ssl_certificate_key /etc/nginx/cert/_.sofineday.com.private.key;