nginx配置ssl证书实现https访问

摘要:自己搭的站,nginx配置ssl证书实现https访问,证书用的阿里云免费证书。

【前提】默认情况下ssl模块并未被安装,如果要使用该模块则需要在编译nginx时指定–with-http_ssl_module参数,或者手动安装一下也可以。

1、阿里云ssl证书申请地址 https://www.aliyun.com/product/cas

2、选择免费版本购买下单

3、进入ssl证书控制台,点击申请

4、按照提示填写信息(验证规则,我是选择的文件验证),点击下一步

5、按照步骤将验证文件上传至服务器指定目录

6、点击验证(此时可能会出现一条报错 失败原因:URL检测过程中发生一个错误),如果文件url可以访问到验证文件,且权限正确,此错误可以忽略掉,等待一会看看是不是会成功,如果成功的话,会有短信通知的。PS:我当时就是,还以为有报错,排查了半天,然后手机收到了短信,提示成功了。

7、然后在控制台选择对应的服务器下载证书,这里是nginx自然就是nginx了,这里是阿里云官网的配置文档https://help.aliyun.com/knowledge_detail/95491.html

8、打开443端口,配置好后,然后重启nginx即可

9、按照以上的步骤配置后,在浏览器用https访问你的网站就可以了


但是这样配置完成后用http还是可以访问你的网站,既然已经配置了https,就因该避免http访问网站,修改步骤如下:

打开你的nginx,将80端口和443端口拆分成2个server

server {
    listen 80;
    server_name ***.*****.com;
    rewrite ^(.*)$  https://$host$1 permanent; #地址重定向https
}

server {
    #接下来正常配置就好
    listen 443 ssl http2; #顺便再配置个http2.0吧!!!
    *
    *
    *
    *
}
结束语:感谢您对本网站文章的浏览,欢迎您的分享和转载,但转载请说明文章出处。
Top