服务器开启https支持以及强制https

开启https支持,很早就有这个想法了,但一直没有实施,一方面是比较麻烦,第二个方面是一时难以找到免费的通配符ssl证书。但这几天,发现 lnmp 自带了 ssl 加密的功能。

Let’sEncrypt 免费通配符/泛域名SSL证书添加使用教程

按照这个教程操作之后,主域名就开启了https了。如果只有主域名,这样就可以了。但是,我还要很多二级域名。二级域名的配置也很简单(虽然还是摸索了两天),打开 vhost 目录下的配置文件,直接将 server 部分拷贝,然后改一下域名和根目录。最后重启nginx:lnmp nginx restart。

当然,我还没有所有的二级域名都开启https,因为部分应用需要请求数据,而协议是http的,需要修改。等应用修改完再全部开启https。


2019.11.16 更新:

将 32 位 centos6 换成了 64 位 ubuntu18.04,顺便将 http 全部重定向到了 https

// nginx 部分配置
server
    {
        listen 80 default_server;
        #listen [::]:80 default_server ipv6only=on;
    # 全部重定向到https
    return 301 https://$host$request_uri;

        access_log  /home/wwwlogs/access.log;
    }

include vhost/*.conf;
}