微信开发-坑爹的80端口映射之nginx
2017-11-10 21:00
309 查看
测试开发时,用的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
正式上线使用的是阿里云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点我下载 |
相关文章推荐
- java 微信平台开发80端口映射
- 微信开发准备(四)--nat123内网地址公网映射实现
- 微信公众号开发80端口映射之搭建ngrok服务器
- 解决MAC系统在做微信开发时候tomcat无法使用80端口问题
- Nginx实现反向代理(同一服务器下不同端口服务映射到80端口)
- 微信开发之本地接口调试(非80端口,无需上传服务器服务器访问)
- 微信公众号开发80端口映射解决方案
- 端口映射ngrok(微信开发准备)
- Jfinal极速开发微信系列教程(二)--------------让微信公众平台通过80端口访问本机
- 为微信小程序开发做准备,在Centos 6.8下利用letsencrypt.sh脚本为nginx 配置免费https证书
- 微信授权域名允许子域名,前后端分离nginx做子域名静态页面映射,解决nginx跨域以及ajax跨域
- 微信开发本地服务器映射外网服务器步骤顺序
- 微信开发之外网映射工具
- 微信开发准备(四)——nat123内网地址公网映射实现
- 微信公众平台开发之申请微信开发测试号及花生壳内网映射
- 微信开发(1) -- 将本地开发环境映射到公网访问
- Mac系统开发常见问题-80端口被占用的解决方案2-使用Nginx解决
- 微信公众号开发之花生壳网站80端口映射失败
- 微信开发中如何将本地端口映射到外网
- 微信开发(一)内网映射之natapp的使用