在linux的nginx中配置https及自动跳转

Posted 青玉案元夕

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在linux的nginx中配置https及自动跳转相关的知识,希望对你有一定的参考价值。

环境:系统ubuntu16 申请证书是腾讯云免费证书

 

首先我在安装nginx SSL证书的时候犯了个错误,nginx是需要安装SSl的模块不然没法配置完成。需要安装一个 http_ssl_module.这是自己踩了一个坑,如果不加上的话,在后面配置完配置文件检查时就会报这个错

 

查看原有的模块,重新编译

安装SSL编译

 

这里注意只需要make

备份二进制文件,这一步我是看网上的,没感觉有什么用,这里我选择删了试试,我删除后服务并没有受到影响,仍然能继续访问。

清除nginx安装包

 

开启nginx

上传证书解压

解压后文件一共有这么多,进入nginx目录后发现两个秘钥,把它们拷贝到/usr/local/nginx/conf的目录里面

crt是证书文件,分为两段

key是私钥文件,分为两段

 

配置nginx/conf/nginx.conf的文件

默认在第98

 

配置文件如下

server {
listen 443 ssl;
server_name www.fengxiao.xyz;#绑定证书的域名
ssl_certificate 1_www.fengxiao.xyz_bundle.crt;#证书
ssl_certificate_key 2_www.fengxiao.xyz.key;#秘钥
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;#ssl这个协议配置
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;

ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
ssl_prefer_server_ciphers on;

location / {
root html;
index index.html index.htm;
}
}

检查nginx配置是否正确

 

接下来就是见证奇迹的时刻,访问不到,为啥了,没有重启nginx,重启nginx后,访问https

 

但是有个问题来了,不是自动跳转,接下来需要配置自动跳转,如果不输入https默认访问的还是http。在conf的配置文件里nginx.confserver字段里加入

 

检查配置重启

测试访问 www.fengxiao.xyz

哎,只能备案后再试了,但是按道理说应该自动跳转到https,可能没有成功。好吧今晚到此为止,等申请了备案再做。

 

 

以上是关于在linux的nginx中配置https及自动跳转的主要内容,如果未能解决你的问题,请参考以下文章

宝塔Linux nginx http强制跳转https几种设置方法

Tomcat配置HTTPS及访问HTTP自动跳转到HTTPS

nginx配置http访问自动跳转到https

nginx证书制作以及配置https并设置访问http自动跳转https(反向代理转发jboss)

spring boot 1.x nginx前置https配置及注意点

http自动转https配置(nginx)