微信学习总结 02 ngrok 部署本机代码,使外网可以访问
一 什么是ngrok
ngrok is a reverse proxy that creates a secure tunnel from a public endpoint to a locally running web service. ngrok captures and analyzes all traffic over the tunnel for later inspection and replay.
ngrok是一个反向代理,可以从公网建立一个安全隧道到本地的web服务。ngrok 抓取和分析所有的经过数据,用于之后的检查和重放。
二 使用ngrok
1. 访问ngrok官网
首先访问ngrok官网 https://ngrok.com/ 注册一个账号,注册后才能获取自己的一个账号秘钥用于进行后面的绑定操作.

| Authtoken |
| 82GkmZCUpRT1Z4uMLCBZ9_6MqWSeGVuXGU9zeBvFrzv |
2. 点击下载链接,下载ngrok.
根据操作系统,选择不同版本的ngrok.下载成功后,将下载的文件放到指定位置,下载的文件里包含ngrok.exe. 比如,把ngrok.exe放到 d:/example 文件夹下,并输入如下命令。
cd d:/example ngrok authtoken 82GkmZCUpRT1Z4uMLCBZ9_6MqWSeGVuXGU9zeBvFrzv ngrok http 8080
注意:
第1行:这条命令切换到ngrok的安装目录。
第3行:初次使用ngrok时,首先要保存在ngrok官网获得的秘钥到(authtoken)到配置文件(ngrok.yml)中。默认保存到 C:\Users\当前用户名/.ngrok2/ngrok.yml下。
第5行:这条命令代表ngrok 监听本地的所有8080端口的web应用。并生成外网可以访问的网络地址。简单说就是把本地的8080端口映射到外网的80端口。
如下图所示

3 访问生成的代理地址
http://bcc20fd4.ngrok.io
或
https://bcc20fd4.ngrok.io
三 配置ngrok
以上实验成功后,发现请求的url地址太长了,而且每次重新启动 ngrok http 8080,生成的url都不一样,不方便记忆。可以使用一个方便记忆的域名。输入以下命令。
ngrok -config ngrok.cfg -subdomain xpxiaowu 8080

输入命令后,成功启动ngrok,可以访问域名:
http://xpxiaowu.ngrok.io https://xpxiaowu.ngrok.io
最近时间域名换了,换成了如下访问域名:
http://xpxiaowu.tunnel.mobihttps://xpxiaowu.tunnel.mobi
在微信公众平台需要验证,输入域名 http://xpxiaowu.ngrok.io,就可以通过微信的URL验证。
注:更详细的配置可以访问,热心网友在网上发布的教程。
http://www.ittun.com/http://www.tunnel.mobi/http://natapp.cn/http://qydev.com/http://www.ngrok.cc/http://gotunnel.org
在线二维码
http://www.liantu.com/
参考资料:
http://www.cnblogs.com/constantince/category/712675.html
http://www.cnblogs.com/constantince/p/5207365.html
http://www.cnblogs.com/constantince/p/5207596.html
http://www.cnblogs.com/gao-yang/p/5677340.html
微信学习总结 02 ngrok 部署本机代码,使外网可以访问的更多相关文章
- windows azure中国 里面建立一个虚拟机,与虚拟机建立通信 里面部署IIS,外网访问
在windows azure中国 里面建立一个虚拟机,里面部署IIS,外网不能访问么? 外网访问的地址是给的那个DNS地址 ,比如我的是 DNS 名称 urbanairserver.cloudapp. ...
- 外网不能访问部署在虚机的NodeJs网站(80端口)
外网能访问部署在虚机的NodeJs网站需注意如下: 在管理门户上配置端点(Http 80->80) 在虚机中的防火墙入站规则中增加应用程序Node.exe的允许规则 启动NodeJs的侦听进程时 ...
- 【阿里云服务器】外网无法访问tomcat下部署的项目
问题提出:在ESC实例上部署了jdk和tomcat(略,上云了,上云了),启动tomct后,内网可以访问8080端口,外网无法访问8080. 系统环境:winsdow 2008 企业版 解决方案: 在 ...
- DotNet Core 2.0部署后外网IP访问
将DotNet Core2.0项目部署在Ubuntu上并且运行后,可以用localhost:5000来访问. 但是如果这时候用外网来访问就不行了. 这时候就有两种解决方案,第一种是用Nginx做代理实 ...
- Diango + uwsgi + nginx 项目部署(可外网访问)
自己通过nginx uwsgi 部署django项目,查询了很多资料,遇到了很多问题,最终完成了部署,趁着心情愉悦,写个随笔,为曾像我一样苦寻解决方案的小伙伴们提供些思路. 安装Nginx: #安装n ...
- Java微信公众平台开发_01_本地服务器映射外网
做微信开发之前,我们需要先做一个内网穿透,让我们的工程可以在公网上被访问. 一.工具列表 内网穿透的相关工具有: (1)natapp 官网 :https://natapp.cn/ (2)花生壳 官网: ...
- 局域网单机部署双tomcat内外网不能访问防火墙问题查出来
tomcat部署的项目内网访问不了 win7 64 位 控制面板 - 安全 -防火墙-入站规则- 新建规则 选中“端口”按钮,点选“下一步”: 选择“TCP”按钮,在“特定本地端口”输入tomcat ...
- Node.js~在linux上的部署~外网不能访问node.js网站的解决方法
这是上一篇node.js部署到linux上的后续文章,当我们安装完node.js之后,建立了sailsjs的网站,然后在外面电脑上无法访问这个网站,这个问题我们如何去解决? 解决思路: 查看linux ...
- 微信小程序接口开发中解决https外网调试问题
准备工作 1.有一台阿里云的Linux CentOS6 服务器,安装支持ssl模块的Nginx 2.有自己的域名,把域名解析到指向该服务器IP,本例中将wx.wangjiang.net 解析到服务器I ...
随机推荐
- Android Weekly Notes Issue #232
Android Weekly Issue #232 November 20th, 2016 Android Weekly Issue #232 本期内容包括: Kotlin的优势讨论; MVVM模式结 ...
- iOS多线程之8.NSOPeration的其他用法
本文主要对NSOPeration的一些重点属性和方法做出介绍,以便大家可以更好的使用NSOPeration. 1.添加依赖 - (void)addDependency:(NSOperation * ...
- 9.PNG的制作
1.背景自适应且不失真问题的存在 制作自适应背景图片是UI开发的一个广泛问题,也是界面设计师渴望解决的问题,我相信我们彼此都深有体会. 比如: 1.列表的背景图一定,但是列表的高度随着列表 ...
- block为什么用copy以及如何解决循环引用
在完成项目期间,不可避免的会使用到block,因为block有着比delegate和notification可读性更高,而且看起来代码也会很简洁.于是在目前的项目中大量的使用block. 之前给大家介 ...
- appfuse:Excel导出
1.pom.xml <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi< ...
- Leetcode 57: Insert Interval 让代码更好读, 更容易测试.
阅读了几个博客, 决定写一个简易版本; 忙着做更多题, 没有时间多考虑优化代码, 所以, 就写一个试试运气. http://blog.csdn.net/kenden23/article/details ...
- spring3系列一
IOC基础 Ioc是什么 Ioc--Inversion of Control 控制反转,不是什么技术,而是一种设计思想.在java开发中,ioc意味着将你设计好的对象交给容器控制,而不是传统的在你的对 ...
- SQL操作符
Oracle中的操作符算术操作符:无论是在sqlserver,或者是java中,每种语言它都有算术操作符,大同小异. Oracle中算术操作符(+)(-)(*)(/) 值得注意的是:/ 在oracle ...
- November 3rd Week 45th Thursday 2016
Shared joy is a double joy, the same as your gift and idea. 与人分享,欢乐.灵感加倍. As a coder, I must work wi ...
- [LeetCode] Flatten 2D Vector 压平二维向量
Implement an iterator to flatten a 2d vector. For example,Given 2d vector = [ [1,2], [3], [4,5,6] ] ...