nginx https 访问http_一键LNMP配置SSL证书,全站https访问

相信很多人搭建网站都用了一键LNMP,方便又快捷,不过网站搭建后还有一个重要的步骤就是加入SSL证书,让https方式访问网站,那怎么来弄呢?首先找到nginx的安装目录找到目录,我的目录: /usr/local/nginx/,如下图,使用Xftp工具登陆的,这个工具方便。

4b5450fa4ddadc4eb2ca8ccd73c598c5.png

关于SSL证书,其实在各大网站都可以免费申请,大部分是免费一年,我是在阿里申请的,申请后把对应的证书下载过来就行了(nginx、apache、IIS、tomcat环境都支持),我选择nginx证书下载。然后在nginx目录下创建文件夹,比如我创建了cert然后把证书上传到此文件夹内。

21d44557279ed590a94814090c0b1ffb.png

证书上传后如下图

2a335d7fd1eb8bac1e36ecf32334d470.png

接下来就是编辑nginx配置文件,到目录/usr/local/nginx/conf下找到nginx.conf用记事本打开编辑。其实你也可以直接在Xshell或者PuTTY直接vi编辑修改。

87606141ea10856d1008fcc534e8047c.png

打开后找到server处

ed6d7ee2b626d851ef9910e6b2be82d1.png

我们需要编辑的地方主要是加入这几点:

listen 443 ssl;

ssl on;

ssl_certificate /你上传的证书目录和证书名称.crt;

ssl_certificate_key /你上传的证书目录和证书名称.key;

具体如下图

6f3e1bd1795febbe6fc107b835c940be.png

修改完保存,然后重启nginx,因为是linux系统可以用Xshell或者PuTTY等连接后输入指令/etc/init.d/nginx restart重启nginx。(每次修改配置保存后一般需要重启才能生效)

485e10c74255b2cb20181ed9aadb1a69.png

然后输入网址,https正常访问

d5b8f7fb8c7125e0a273cec955d49656.png

不过要http访问的话会400报错

db02f9b646bbafa97f99435c44604dc5.png
5352873f21f7cee2d467d1f625bdb0fb.png

400 Bad Request

The plain HTTP request was sent to HTTPS port

解决办法将上面配置文中的" ssl on ; " 注释掉或者修改成 " ssl off ;",这样,nginx就可以同时处理HTTP请求和HTTPS请求了。

dcdca7d5d4fa37219559179d4227ea9e.png

然后网站可以HTTP和HTTPS同时访问。不过,我们不想还有http能访问,要全站https访问呢?

其实这个也不难,我们只要修改两条就解决了,首先就是在server_name _;中加入域名带www和不带的,最后再加一句定向语句:

if ($scheme = http ) {return 301 https://$host$request_uri;}

修改的范围入下图两个个框中,其他不用修改

d53ce5781d831f759c443ae5919ac7f4.png

这样网站就开启了全站https访问。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值