Linux服务器中基于Nginx配置HTTPS

在学习微信小程序开发的过程中发现小程序需要使用HTTPS请求并且不能使用IP,在本地开发环境中还是可以使用域名的,当然这是我在学习中所理解的,如果有误导欢迎指正。这里就以微信小程序为背景,在Linux服务器中基于Nginx配置一下HTTPS。

HTTP与HTTPS的区别

自行百度。网上有非常多的文章来介绍这两者的区别,这里就不作介绍了。

下载证书

证书这里使用的是阿里云上申请的免费证书,有效期是一年,一年后再重新申请替换一下就好了。我这里是有在阿里云上购买域名所以就直接申请了证书,至于如何申请就自己去百度吧,网上都有教程,很简单的。

域名解析

在阿里云上购买域名后,将域名解析到服务器,安装Nginx后我们就可以通过域名访问Nginx欢迎页了。

安装Nginx

网上也有特别多的教程,不作过多的阐述。

配置HTTPS

把下载成功的证书文件xxx.pem和xxx.key放在Linux服务器中的任意位置,想放哪就放哪。

打开nginx.conf文件,把文末默认注释掉的如下代码放开:

     server {
        listen       443 ssl;
        server_name  www.xxx.com;

        ssl_certificate      xxx.pem;
        ssl_certificate_key  xxx.key;

        ssl_session_cache    shared:SSL:1m;
        ssl_session_timeout  5m;

        ssl_ciphers  HIGH:!aNULL:!MD5;
        ssl_prefer_server_ciphers  on;

        location / {
            root   html;
            index  index.html index.htm;
            proxy_pass  http://127.0.0.1:8088;
            proxy_redirect default;
        }
    }

使用pwd命令查询证书文件的完整目录,复制下来修改ssl_certificatessl_certificate_key两项的值。
这时候启动Nginx就可以使用'https://www.xxx.com'来访问你的服务器了。
如果你还有后台项目需要跳转接口又不想在域名后面带端口号,只需要在location/{}里面添加如下两句代码:

proxy_pass  http://127.0.0.1:端口号;
proxy_redirect default;

这样你在使用'https://www.xxx.com'访问的时候就会自动映射到'https://www.xxx.com:端口号',后面再追加你的接口路径就可以正常访问了。

Last modification:September 10th, 2019 at 10:30 am
If you think my article is useful to you, please feel free to appreciate

Leave a Comment