微信开发-坑爹的80端口映射之nginx

测试开发时,用的ngrok映射到本地ip+自定义端口,开发到了网页授权阶段,地址被发现没有备案,瞬间被禁了。改用了花钱买了的natapp映射地址。开发完毕后,准备正式上线了。

正式上线使用的是阿里云ECS,域名也是买的阿里云,使用的阿里云DNS解析,之前没有做过域名解析,用了阿里云的DNS解析更是坑的吐血。先吐槽一下自己遇到的坑,让看到博客的人可以少走弯路。

微信的接口配置URL只支持80端口,由于项目的80端口不可用,必须换端口,之前的ngrok和natapp自定义的端口都可以使用,所以准备配置一个域名里面包括端口号的。正巧阿里云可以配置隐式转发,也就是把我的ip:xxx.x.x.xxx:8990  配置成 http://xx.xxxx.com ,简单的以为配置之后后面再添加项目和微信的请求地址就可以了。但是阿里云的DNS怎么都解析不好,访问的地址不对,后面加什么都不能访问到我想要的地址。打电话咨询了客服,客服说我配置的对,但是访问就是不对,让我提交工单。上下等了快一天,那技术才告诉我,阿里云根本不支持。阿里云的隐式转发压根就是摆设,仅仅只是可以把长的地址变成短的,而且变短之后的地址什么参数都不可以加。说的直白点就是短的地址+/项目地址  是不可以访问的。醉了。

好了,墨迹一堆进入正题。我是使用的nginx工具,官网下载http://nginx.org/en/download.html  我的服务器是windows,所以我下载的是稳定版nginx/Windows-1.12.2。工具我上传了,方便大家下载。不需要安装,解压就用。

nginx需要配置nginx-1.12.2/conf目录下的nginx.conf文件。打开文件把我贴的全部覆盖原来的就行。

server下的结点代表,可以添加多个server:
listen:监听80端口
server_name:转发到哪个地址
proxy_pass:代理到哪个地址

------------------------------------------------------------nginx.conf配置代码---------------------

worker_processes  1;
events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;
    server {
        listen       80;
        server_name  127.0.0.1:8990;
        location / {
            proxy_pass   http://127.0.0.1:8990;
        }
    }
}

---------------------------------------------------------------配置文件结束-----------------------------
注意不要直接双击nginx.exe,这样会导致修改配置后重启、停止nginx无效,需要手动关闭任务管理器内的所有nginx进程.
在nginx.exe目录,打开命令行工具,用命令 启动/关闭/重启nginx 
start nginx : 启动nginx
nginx -s reload  :修改配置后重新加载生效
nginx -s reopen  :重新打开日志文件
nginx -t -c /path/to/nginx.conf 测试nginx配置文件是否正确
关闭nginx:
nginx -s stop  :快速停止nginx
nginx -s quit  :完整有序的停止nginx

nginx/Windows-1.12.2点我下载

你可能感兴趣的:(微信开发-坑爹的80端口映射之nginx)