微信開發的本地除錯環境搭建

m2land發表於2016-06-20

微信開的本地除錯只支援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埠。


相關文章