美文网首页0基础自学linux
0基础自学linux运维-1.6-nginx服务器http重定向

0基础自学linux运维-1.6-nginx服务器http重定向

作者: hualinux | 来源:发表于2019-07-02 00:04 被阅读2次

    需求

          现在越来越多的网站都使用https,这样既保证了网站的安全,也避免被网络运营商植入广告、内容被监控的问题。

    现在公司要求当客户用http访问的时候,自动重定向为https

    解决

    把http重定向到https使用了nginx的重定向命令。那么应该如何写重定向?之前老版本的nginx可能使用了以下类似的格式。

    rewrite ^/(.*)$ http://domain.com/$1 permanent;

    或者

    rewrite ^ http://domain.com$request_uri? permanent;

    现在nginx新版本已经换了种写法,上面这些已经不再推荐。现在网上可能还有很多文章写的是第一种。下面是nginx http页面重定向到https页面最新支持的写法:

    server {

          listen        80;

          server_name    www.xxx.com;

          return        301 https://$server_name$request_uri;

    }

    server {

          listen        443 ssl;

          ssl on;

          server_name    www.xxx.com;

          ssl_certificate /root/.acme.sh/xxx/fullchain.cer

          ssl_certificate_key /root/.acme.sh/xxx/xxx.key

          [....]

    }

    其中:

    删除线是根据自己的情况进行修改的

    我这里的证书使用的是 acme.sh脚本自动生成和到期重新生成的Let’s

    Encrypt证书,具体操作可见《0基础自学linux运维-2.15-使用acme.sh安装免费ssl证书并自动更新》

    相关文章

      网友评论

        本文标题:0基础自学linux运维-1.6-nginx服务器http重定向

        本文链接:https://www.haomeiwen.com/subject/pcjncctx.html