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

微信开的本地调试只支持80号端口,实验了很多办法,总结一下:

办法一: 

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

办法二:

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

 办法三:

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

1)首先:把linux器占用80号端口的服

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

sudo nano /etc/ssh/sshd_config

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

GatewayPorts yes

然后重启SSHsudo 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@ (这句话的意思是,把发到:80的流量都转发到本地的9001端口。

上一篇:基于ffmpeg的流媒体服务器


下一篇:转:解决WEB页面上"焦点控制"一法