微信公众号的开发,要搭建网站,并且随时都有可能修改网站内容进行调试,这就需要临时外网能返回本地开发环境搭建的项目进行测试,即内网映射到公网,但是好多开发者没有自己的域名和服务器,这里我们先来搭建一个本地代理环境把服务器地址变为外网能访问的地址。

  下面是我对内网映射外网的方法进行的一下简单总结:

  1 ngrok映射工具(失效)

  2 nodejs的localtunnel服务(虚拟域名,随机生成,总是变化,不方便)

  3 www.tunnel.mobl(失效)

  4 QQ浏览器微信调试工具(已下架)

  5 花生壳客户端--收费(Windows、Linux、树莓派、网页版),我电脑是mac的,没有对应客户端,所以没有选用这款工具


  6 pagekite(http://pagekite.net/)--收费 31天试用:我们进入他的官网,可以看到,它支持很多平台,我要使用的是mac平台的,点mac切换到安装命令提示上:

       

    安装提示打开终端执行命令,先执行第一行命令,完成后执行第二行,注意第二行中80,是你要使用的端口号,yourname是你的域名,第二条命令执行后,按照终端提示进行操作就可以了,提示注册产品是输入Y,提示填写邮箱时,最好填写真是邮箱然,之后记得去邮箱激活一下,提示继续时输入Y即可,提示保存设置时也输入Y。然后我们可以看到如下截图,图中蓝字即为本地端口号映射到外网的地址:

   

    打开注册邮箱,点击右键进行激活,可以看到,我的试用期是31天~

    

    激活后,终端会有提示信息:

    现在我们来测试一下,我在我的桌面,新建里一个test的文件夹,里面放了一个html文件,提示信息为Hello World,我们新开一个终端窗口使用python命令来启动服务:

    $ python -m SimpleHTTPServer 3100

    

    然后打开浏览器,在地址栏输入:http://localhost:3100/,可以看到我们的测试页面:

    打开本地端口号映射到外网的地址,我们也可以看到测试页面:

    证明使用pagekite,已经成功将内网穿透到了外网~~

    按control+C,可以退出pagekite,再次登录,执行命令$ pagekite.py即可(再次登陆系统会自动进入上次登陆的账号,自动完成网络映射)。


  7 NATAPP(https://natapp.cn/)--有2条免费隧道

    这里我要先说明一点,官网提示信息如下:

    我下面说的是免费隧道的使用方法,不能用于微信开发,如果有兴趣的同学,可以看看。

    先进入官网进行用户注册,注册完成后,下载客户端:

    下载完成后解压,然后打开终端,输入命令:

      打开终端进入natapp目录,执行 $ chmod a+x natapp

      然后接着执行 $ ./natapp

       结果如图所示:

    看到认证错误的提示信息,前面,我们已经进行了注册,但是那时,我没有申请免费隧道,现在,进入官网系统申请一个免费隧道,入口在购买通道菜单里,按照提示完成即可。注意隧道协议要选择Web。

     现在,我已经拥有了一条免费隧道:

    点击上图中的蓝色按钮--「点击复制」,赋值authtoken值,然后进入终端,输入命令:./natapp -authtoken=YourAuthtokenValue,执行成功,会看到如下界面:

    因为在配置pagekite的时候,我把测试页面放在了3100端口下,并用Python启动了服务,这里我图个省事,也是把natapp的端口设置在了3100,从上图中,可以看到,tunnel status 为online,这是,我们来看一眼,本地地址与外网地址页面:

    

    napapp已经配置成功了。

    按control+C退出,重新启动,执行命令./natapp -authtoken=YourAuthtokenValue

    (我写的过程比较简略,大家也可以参考这篇文章:https://natapp.cn/article/natapp_newbie)


  8 魔法隧道(http://www.mofasuidao.cn/)--有2条免费隧道

    进入魔法隧道官网,注册后登录,在用户控制中心,新建隧道,隧道信息可根据自己需要自行填写:

    创建完成后,可以在控制中心看到隧道列表:

    然后点击下载,到下载页面下载自己平台所需的客户端:

    我下载的是mac版的,下载后,我默认放到了桌面,打开终端,进入桌面目录,执行命令:

      $ chmod a+x mofaisuidao

      $ ./mofasuidao tokenValue

    上面命令行里的tokenValue为隧道token。

    看到下图则说明隧道已启动:

    这里我依然用3100端口做测试,可以看到成的页面效果如下:

    按control+C退出,执行命令$ ./mofasuidao tokenValue 启动隧道。

    魔法隧道官网,也提供了一篇文章,为使用魔法隧道提供帮助,大家也可以作为参考:http://www.mofasuidao.cn/rest/page/help

  到这里,我已知的内网映射外网的工具以及使用方法,已经总结完了,一方面,可以给自己备份下操作过程,另一方面,也希望给需要的同学提供一点参考,如果以后我知道了新的工具,也会补充到文章中的。

3 微信开发本地代理环境的搭建--实现将内网ip映射到外网的更多相关文章

  1. 微信公众号开发之怎样将本机IP映射成外网域名

    近期一个项目须要用到微信公众号的网页授权登录,在研究这个公众号的时候遇到各种困难,现将自己的一些心得总结一下. 我想进行微信公众号开发遇到的第一个困难就是微信公众号必须输入一个外网能够訪问的域名,在网 ...

  2. java -Mac搭建本地服务器并映射到外网

    最近在学习Html,小有进步变想着写一个浪漫的静态页面给女朋友浪漫一下,那么问题就来了,如何把我的网页让对网络一窍不通的女朋友看到,所以便想到了是用自己电脑作为服务器的想法.百度以后整理如下: 首先搭 ...

  3. Mac搭建本地服务器并映射到外网

    最近在学习Html,小有进步变想着写一个浪漫的静态页面给女朋友浪漫一下,那么问题就来了,如何把我的网页让对网络一窍不通的女朋友看到,所以便想到了是用自己电脑作为服务器的想法.百度以后整理如下: 首先搭 ...

  4. Android 获得本地IP地址、外网IP地址、本设备网络状态信息、本地Mac地址

    本地内网IP和外网IP的区别: 根据我的经验一台电脑需要两个ip才可以上网,一个是本地的内网ip 一个是外网的ip 本地的ip 一般是192.168.1.2这种样子  只要在不同的路由器上可以重复 外 ...

  5. Java开发和运行环境的搭建

    Java开发需要准备的东西? JDK+Eclipse 其中JDK的意思是Java开发工具包,Eclipse是进行用于做Java程序开发的工具(当然你也可以用记事本什么的去做). 其他开发工具:JCre ...

  6. 获取Mac、CPUID、硬盘序列号、本地IP地址、外网IP地址OCX控件

    提供获取Mac.CPUID.硬盘序列号.本地IP地址.外网IP地址OCX控件 开发语言:vc++ 可应用与WEB程序开发应用 <HTML><HEAD><TITLE> ...

  7. sockets+proxychains代理,使内网服务器可以访问外网

    Socks5+proxychains做正向代理 1.         应用场景: 有一台能上外网的机子,内网机子都不能连外网,需求是内网机子程序需要访问外网,做正向代理. 2.         软件 ...

  8. 本地k8s环境minikube搭建过程

    首先要安装docker这个环境是需要自己安装的.相关步骤如下: 1 2 3 4 5 6 7 8 9 10 11 yum install -y yum-utils device-mapper-persi ...

  9. VM中Linux网络设置(固定ip、连接外网开发环境)

      在开发过程中,我们经常需要在linux中进行操作.毕竟服务器的系统大多数都是Linux,所以在dev环境需要配置好一台Linux系统配合开发.   在VMWare Workstation Pro中 ...

随机推荐

  1. 页面布局排版-block,inline,float,relative,absolute等

    1.span和div的区别 div是块元素(block),span是行内元素(inline): span什么事也不会做,它存在的目的在与为开发者给它所围绕的元素指定样式.div类似,不过它引入了行分隔 ...

  2. JS中的方法运用笔记

    1.警告(alert 消息对话框) alert(字符串或变量); <script type="text/javascript"> var mynum = 30; ale ...

  3. 牛客网 牛可乐发红包脱单ACM赛 C题 区区区间间间

    [题解] 我想到了两种解法. 一种是扫描线+线段树+单调栈. 另一种方法是O(n)的,比较巧妙. 考虑每个数在哪些区间可以作为最小数.最长的区间就是它向左右走,直到有数字比它小,这个可以用单调栈维护. ...

  4. ASP.NET MVC如何在页面加载完成后ajax异步刷新

    背景:之前已写过两篇有关Ajax的随笔,这一篇是单独针对在页面加载完成的Ajax操作.比如说打开学生列表页面,先加载页面,然后以Ajax的方式,从数据库中检索相应的学生信息,给浏览者更好的体验. 简单 ...

  5. PS小demo

    1.打开图像素材. 2.图层 >> 添加调整图层 >> 色相/饱和度. 得到如下效果: 3.创建新图层,将图层混合模式设为“柔光”,选择笔刷工具,硬度100%,按下图所示绘制该 ...

  6. PS学习笔记(03)

    ui到底是什么? 很多同学不知道ui是什么,以为画个ICON图标就是做ui了,导致很多人都忙着画各种各样的图标.这样很容易让那些新人们走错路,最后我想说的是icon不是全部,不要沉迷其中,要学的还有很 ...

  7. PTA 04-树5 Root of AVL Tree (25分)

    题目地址 https://pta.patest.cn/pta/test/16/exam/4/question/668 5-6 Root of AVL Tree   (25分) An AVL tree ...

  8. datatable生成easyui的json格式汇总( 转)

    转自 http://www.cnblogs.com/WikStone/archive/2012/07/02/2573137.html 目前项目没有使用第三方的json转换库,都是根据json格式进行字 ...

  9. Scrapy的log日志功能

    Logging Scrapy提供了log功能,可以通过 logging 模块使用 可以修改配置文件settings.py,任意位置添加下面两行 LOG_FILE = "mySpider.lo ...

  10. 虫食算(codevs 1064)

    题目描述 Description 所谓虫食算,就是原先的算式中有一部分被虫子啃掉了,需要我们根据剩下的数字来判定被啃掉的字母.来看一个简单的例子: 43#9865#045    +    8468#6 ...