nginx配置微信小游戏/程序、https/wss协议最简单使用方法。

由于小游戏即将要上线,也是第一次搞,证书这块真是麻烦,昨天上午研究到现在才明白,也是够笨的,接下来把心得分享给大家希望有帮助。

你要上微信 就要https和wss的协议(不解释,自己去看微信文档),https不多介绍http的安全模式,wss呢?哈哈,自然就是WebSocket的安全模式,这个先搞明白。

废话不多说直接上代码。

我希望你看到这篇文章的时候已经安装好nginx了,这里就不在赘述了。

其次你要有解析在你服务器上的域名,以及有该域名的安全证书,这里多废话两句吧。

我司用的是阿里的域名如图

进入域名控制台,点击修改,把你服务器的外网ip写上,点击保存,然后在本机ping一下,啥时候通了啥时候进服务器。

第二部,还要下载你域名的安全证书。

进入ssl证书控制台,找不到直接搜索栏里搜。

给个传送门,证书按照这个走<如何下载免费证书>/

颁发成功会是这样的

然后点击下载,就会下载下来,注意一点要注意你是什么服务器,自行选择

nginx配置微信小游戏/程序、https/wss协议最简单使用方法。_第1张图片

下载下来的证书是这样的。一个key文件,一个pem文件。

接下来走起。

第一步,你要能正常启动nginx,以下是安装好的nginx目录

nginx配置微信小游戏/程序、https/wss协议最简单使用方法。_第2张图片

几个常用命令:./nginx 启动 ./nginx -stop停止 ./nginx -t 检测conf文件是否有错, ./nginx -s reload重启  通常用./nginx -s reload就够了

按照我的操作一步一步来,啥也别动自然就会成功。

如上图应该是安装好的nginx目录,进入sbin启动nginx(cd sbin   ./nginx  ./nginx就是启动命令) 然后访问你解析的域名,不出意外直接进这个界面

nginx配置微信小游戏/程序、https/wss协议最简单使用方法。_第3张图片

然后创建文件夹 cert  命令 mkdir cert

然后将刚才下载的证书放入这个文件夹

进入conf文件夹,这里面就是配置文件了

别的不需要管,修改nginx.conf就行 我简单介绍一下这里的东西 如下图

主要的圈起来了,

include: 如果你学过JavaScript 这和里面的require的效果是一样的,导入外部文件,但是他强大的一点是你include之后他会直接跳入你导入的这个文件去执行里面的东西。

server:服务,一个serverd代表一个服务,这个可以多加几个,比如反向代理多个写法也很简单直接写server{  }不限位置。

listen:server服务 进来的默认端口,这个端口是可以自己更改的。一般不推荐改。

server_name:你要反向代理的域名 比如你希望 www.wozhenshuai.com代理到http://www.qq.com 这里的server_name就写www.wozhenshuai.com。

location:代理的具体内容,写法也是location{} 里面proxy_pass 就是你要代理到的地址 写法是这样的proxy_pass www.qq.com这样就会代理到qq的官网了,第二种写法,写端口号也是可以的比如 proxy_pass 192.168.200.xx:8080 这样也是可以的。

#是注释,你们的conf里面应该没有我#proxy_pass这个东西 应该直接是 index  index.html 这是啥呢?你可以回去nginx根目录看一圈就会发现有个index文件夹,里面有个index.html哈哈 没错,这就是nginx欢迎页面。

nginx配置微信小游戏/程序、https/wss协议最简单使用方法。_第4张图片

接下来再说如何配置https以及wss

继续看图

nginx配置微信小游戏/程序、https/wss协议最简单使用方法。_第5张图片

location里面的配置文件我也给截个图,

nginx配置微信小游戏/程序、https/wss协议最简单使用方法。_第6张图片

划重点里面的代理地址写 http:// qq.com  千万别写成 https。还有图上的location /wss{} wss可以删除掉。最后他到底是如何实现的wss协议呢?就是因为因为继续看图吧。

nginx配置微信小游戏/程序、https/wss协议最简单使用方法。_第7张图片

这个是标准的文件,代码如下:

location /{
        proxy_pass http://此处写你要代理的域名;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "Upgrade";
    }

 

https的代码如下:

location /{
    proxy_pass http://web;#代理到原有的http的地址去
    proxy_set_header   X-Real-IP        $remote_addr;
        proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
    add_header Access-Control-Allow-Origin *;#跨域访问设置
    }

 

保存退出!  保存退出的快捷键  先按Ecs 在按两下大写ZZ

然后回到sbin目录  输入 ./nginx -s reload  然后测试,如果不行看看是不是你配置文件疏忽写错了。检查配置文件命令./nginx -t

不出意外就行了,如果有问题欢迎留言。

着急的也可以加我微信问我。lalaolalao00

有用就点个赞咯

 

你可能感兴趣的:(linux,nginx配置,https/wss)