Nginx配置开启Https、HSTS、Http2、TLS1.3零基础教程
安装nginx有可能你当前已经通过apt-get、yum等命令安装了,但是可能不支持https http2 ipv6 TLS1.3 HSTS等功能。(以上功能面板一般是配置好的) 查看当前版本配置 我们可以通过nginx -V命令来查看版本以及支持的配置。 下面以ubuntu为例,卸载安装nginx 卸载 安装依赖库 安装 nginx 到nginx download上找到最新的nginx版本 # 编译安装,这里可能会报错,缺少啥就去安装啥 # 通过软连接,这样就可以直接使用nginx执行 SSL证书 SSL证书通常需要购买,也有免费的,通过第三方SSL证书机构颁发。你也可以在国内的云服务商上免费申请,(面板支持自动申请)但是一般免费的ssl证书只能支持单个域名。 这里推荐Let’s Encrypt机构,然后使用acme.sh从letsencrypt生成免费的证书,且可以生成泛域名证书。 PS: 建议使用DNS验证 –dns dns_ali是根据不同服务商来的,dns_ali就是指阿里云。其他服务商的参考How to use DNS API。 证书生成后,默认在~/.acme.sh/目录下,这里的文件是内部使用的,需要使用–installcert命令指定到目标位置 这里将证书放到了nginx的conf目录下。…/conf/ssl/… 配置http https http https的配置很简单,完整配置如下 PS: 上面的return为301重定向(强制https),网上也有许多使用rewrite来重定向,但是return指令简单高效,建议尽量使用return 混合配置(一般面板配置) https 安全加密套件 https默认采用SHA-1算法,非常脆弱。我们可以使用迪菲-赫尔曼密钥交换。 我们在/conf/ssl目录下生成dhparam.pem文件 下面的指令ssl_protocols和ssl_ciphers是用来限制连接只包含SSL/TLS的加强版本和算法,优化提高服务器性能。 最后完整配置 配置文件优化 为了让二级域名或其他服务器的网站支持上面的功能,每个server都这么写太过于繁琐。 可以将listen 443 、ssl、add_header相关的单独写在一个conf文件上,然后使用inculde指令。 如下:其他的配置都放在conf.d/https-base.conf中- 66
- 0
nginx教程
Checking in, please wait
Click for today's check-in bonus!
You have earned {{mission.data.mission.credit}} points today!
My Coupons
- ¥CouponsLimitation of useExpired and UnavailableLimitation of use
before
Limitation of usePermanently validCoupon ID:×Available for the following products: Available for the following products categories: Unrestricted use:Available for all products and product types
No coupons available!
Unverify
Daily tasks completed: