Nginx环境中如何将HTTP跳转至HTTPS设置

如果我们VPS服务器的WEB环境采用的是NGINX架构,那如果我们将安装SSL证书的网站希望强制跳转至HTTPS网站URL的时候那需要如何设置呢?这里个人建议是这样的,我们必须要强制一个地址,这样网站的体验才更加专业,要不我们会看到HTTP和HTTPS都有地址。

第一、准备工作

1、我们需要确定当前的环境是NGINX,如果是APACHE那就简单了,直接在.HTACCESS文件设置。

2、我们需要将将域名的WWW和@记录指向A记录。

3、我们已经安装了SSL证书。

参考几个安装SSL证书的文章:

1、Linux VPS主机Debian/CentOS安装LetsEncrypt免费SSL证书记录 - http://www.cnvultr.com/282.html

2、StartSSL免费SSL证书申请和账户注册完整过程 - http://www.itbulu.com/startssl.html

3、letsencrypt免费SSL证书 - https://letsencrypt.org/getting-started/

如果我们有预算,那也可以购买付费SSL,比如Namecheap提供的SSL还是比较便宜的,年付1.99美元。或者我们索性就用免费SSL,LetsEncrypt和沃通以及StartSSL都不错。

第二、修改Nginx配置文件

server {
    listen 80;
    server_name 14vps.com www.14vps.com;
    return 301 https://www.14vps.com$request_uri;
}

server {
    listen 443 ssl;
    server_name www.14vps.com;

    ssl_certificate     /path/to/cert-crt.crt;
    ssl_certificate_key /path/to/cert-key.key;
  
}

这里我们可以看到上面的NGINX配置文件,将我们当前站点的.CONF文件修改成上面的配置,注意修改域名以及是否用WWW作为主域名。

第三、重启NGINX生效

配置替换文件之后,我们需要重启NGINX生效。

server nginx reload

如果没有错误就说明生效完毕。然后我们可以看到全部定向到HTTPS URL地址。

原文地址:https://www.cnblogs.com/miercler/p/5467225.html