您的位置:首页 > 移动开发 > 微信开发

微信开发的本地调试环境搭建

2016-06-20 21:43 351 查看
微信开发的本地调试只支持80号端口,实验了很多办法,总结一下:

办法一:

公司使用的是联通ADSL, 在路由器上做完端口映射后发现电信/联通封了80端口,所以这个办法走不通了。

办法二:

搜可以下,可以用ngrok,飞快的下载,设置好了。把ngrok的URL填入微信设置时,微信提示这种网址存在安全风险,已经不支持了。

办法三:

这个方式要求你有一台外网linux服务器。微信要求这台机器的域名是已经通过ICP备案的,你可以用你开发域名的一个子域名指向这个服务器。比如http://wechatdev.yourdomain.com

(1)首先:把该linux服务器占用80号端口的服务关闭;

(2)打开服务器的远程转发功能,执行以下命令:

sudo nano /etc/ssh/sshd_config

在/etc/ssh/sshd_config文件末尾加入一句:

GatewayPorts yes

然后重启SSH:sudo service ssh restart

尝试了阿里云和Azure 的Linux虚拟机,有以下要注意的:

阿里云

打开防火墙,允许访问80端口

Azure:

打开防火墙,允许访问80端口

Azure比阿里云特别的地方是,root用户默认是没打开的。所有我们需要打开root 用户

用SSH登录,你创建虚拟机的时候应该有一个用户。

执行以下命令:

sudo nano /etc/ssh/sshd_config

修改

PermitRootLogin without-password

为:

#PermitRootLogin without-password (注释掉)

PermitRootLogin yes

然后重启SSH:

sudo service ssh restart

然后切换到root 用户

sudo su

检查root 用户是否锁定(LOCK表示锁了)

[root@Linux ~]# grep root /etc/shadow

root:*LOCK*:14600::::::

给root 一个密码,这样就启用root了

[root@Linux ~]# passwd

最后一步,设置端口转发,在本机上运行(假设你使用MAC):

ssh -R 80:localhost:9001 root@wechatdev.yourdomain.com (这句话的意思是,把发到wechatdev.yourdomain.com:80的流量都转发到本地的9001端口。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: