16boke - 一路博客

外网访问本机工具花生壳和ngrok

最近在做微信企业号项目的时候发现微信必须要提供一个外网可访问并且端口为80的URL地址,但是对于我们内网用户并且没有外网服务的情况下,很难提供这样一个外网地址。本章就介绍两种方式来将本机内网服务地址与外网地址进行映射来实现访问外网地址就可以直接请求到内网服务。

一、花生壳

记得当初上大学的时候在宿舍经常鼓捣一些网络方面的项目,经常写完一个项目就想发布到互联网上,但是由于当初免费主机也有不少,但是都不太稳定,所以就想办法自己搭建一台能提供互联网服务的服务器。于是在网上找到了花生壳,记得当初使用的是花生壳工程版,现在好像已经找不到了。今天介绍的是“新花生壳”这个版本,在网上还可以找到软件。

1、注册安装

想要运行花生壳需要先在花生壳官网进行注册:http://hsk.oray.com/,具体注册按照官网步骤。

安装花生壳也是直接下一步完成。

2、运行

运行花生壳输入注册的用户名和密码就可以看到主界面:

QQ截图20160908210558.png

在域名上点击右键,选择新花生壳管理,就可以进行内外网映射的管理:

QQ截图20160908210828.png

输入内网主机例如localhost,内网端口例如8080,即可完成映射。

花生壳可以做内网的各种端口映射,例如http、ftp、ssh等各种协议的映射。总之花生壳功能还是很强大的,但是映射的外网URL还是带有非80的端口号,所以在一些情况下还是比较局限。接下来介绍第二种方法使用ngrok。

二、ngrok

ngrok是一个非常轻量的内外网端口映射工具,ngrok的官网:https://ngrok.com/

从ngrok的官方介绍中可以看出它能提供一种安全通道来访问本地服务,与花生壳的功能一至。

1、注册安装

ngrok也需要注册,直接在官网上进行注册,并下载相应系统的软件,我这里下载的是windows64位

2、运行

直接双击运行ngork.exe,会弹出命令行窗口:

QQ截图20160908211715.png

3、输入认证信息

在官网注册并登录之后会介绍操作步骤:

QQ截图20160908211841.png

3、将本地8080端口进行映射

安装完authtoken之后,再输入ngrok http 8080即可

QQ截图20160908212144.png

其中http://18de7472.ngrok.io就是外网URL地址,此时如果本地的8080服务已经起来就可以通过这个外网地址进行访问。

同时它还提供一个web控制台:http://localhost:4040,可以看到请求的网络信息,类似于firebug的network信息。

ngrok