背景:听哥们说了个工具ngrok,可以让本机配置的web服务在外网访问,抱着将信将疑的态度试了试,发现还真的可以。下面记录下我自己的安装步骤,另外谈下自己还有些疑问的地方。

参考资料网站:http://blog.csdn.net/liuxiyangyang/article/details/22922265

一、首先访问官网,https://ngrok.com/  注册一个账号(注册后才能获取自己的一个账号秘钥用于进行后面的绑定操作)。

二、注册完成后,在跳转后的页面不用理会支付模块,可以看到自己的秘钥信息以及一个下载链接,如下图。

三、点击下载链接,下载ngrok(开始下载后,可以点击浏览器返回到之前有秘钥信息的页面,页面暂时不要关闭,后面还有用),下载完成后可以看到压缩包里只有一个.exe文件。提示下千万不要习惯性的以为解压到当前文件夹,然后双击.exe文件哦。我就是没看完流程这么干的,然后就发现怎么弄都装不上,正确的操作是解压的时候选择   解压到 ngrok  这个选项。然后将解压生成的文件夹直接放到自己想放的地方,例如我直接放到D:\ProgramFiles目录下。

四、打开cmd窗口开始进行安装:

1.进入 d盘 根目录,在cmd窗口敲入命令  D:  回车;

2.进入ngrok目录,在cmd窗口敲入命令    cd ProgramFiles\ngrok;

3.此时回头看第三步让浏览器保留的页面,将下面截图里的蓝色背景区域命令,复制到cmd命令装口,回车运行,就可以了。

说明:此过程的1、2步主要是为了找到第三步可以运行命令的位置。命令中的80数值,是指你本地web服务运行的端口,例如php会是80端口居多而jsp则会是8080端口居多,根据自己web服务运行的实际端口填写值就好。

五、运行完上面的命令,可以看到ngrok配置完成后的信息,如下截图,红色区域就是给分配的外网访问域名。或者也可以通过访问 http://localhost:4040/ 查看到相同的信息。

六、配置指定自定义域名替换掉工具生成8位不容易记住的域名,在上面截图的cmd窗口ctrl+c退出,复制命令 ngrok -subdomain=cdy 80  回车就可以看到绑定后的访问域名是  http://cdy.ngrok.com 将访问域名放到浏览器,可以确定访问如下截图。

补充:到上面所有的ngrok应用算是完成了,对于这个的访问原理有些疑惑如下:

1.作为web开发人员,我所知道的一个外网访问流程是 由客户端在浏览器地址栏输入访问url,然后由url里的域名解析到域名绑定的IP,再由IP解析到绑定的服务器,之后再由服务器端web配置的域名解析定向访问文件。但是,我本地机的IP并不是固定的IP,那么我就不清楚工具是怎么完成绑定我本地机的?

2.由于1的疑惑,有点担心的是这个工具,会不会在我不清楚的情况获取我web配置的DocumentRoot 指向文件目录下的文件信息(也是基于此建议想用到的朋友最好在自己的DocumentRoot 指向文件目录下放一个index.html文件,测试过如果不放的话,会看到web文件目录的目录结构)。

3.当我退出ngrok后,再访问http://cdy.ngrok.com/  发现会提示这个域名没有被找到。于是有点猜测会不会是拿我的临时IP进行绑定的,用指定域名的形式开启ngrok命令是ngrok -subdomain=cdy 80 ,访问下域名确定可以看到测试信息。然后新启一个cmd窗口进行下ping的解析测试,悲剧的是ping域名的时候提示找不到。

总结:总的来说ngrok是个挺好的工具,但是我不太清楚的是究竟会不会存在我疑惑里提到的第二点担心

http://blog.csdn.net/gebitan505/article/details/39497779

ngrok 本机代码部署外网访问神器(转)的更多相关文章

  1. ngrok 外网访问小能手

    以前在学校的时候想把自己做的网站发布让外网访问,可是又没有虚拟服务器和域名就显得异常的麻烦,曾经试过花生壳映射,效果虽然还不错,但是略显麻烦.今天找到一个更方便的小工具--ngrok ! 简单的介绍一 ...

  2. windows azure中国 里面建立一个虚拟机,与虚拟机建立通信 里面部署IIS,外网访问

    在windows azure中国 里面建立一个虚拟机,里面部署IIS,外网不能访问么? 外网访问的地址是给的那个DNS地址 ,比如我的是 DNS 名称 urbanairserver.cloudapp. ...

  3. asp.net core 部署到服务器之后外网访问不了

    部署发现问题 今天在部署.net core的时候,发现访问http://localhost:xxxx可以,但是用外网访问并不行! 开始尝试解决问题 一开始以为是nginx的问题.各种折腾,各种改配置文 ...

  4. 腾讯云linux系统部署项目无法通过外网访问

    最近尝试使用了一下腾讯去的linux系统服务器,但是却遇到各种问题,下面记录的问题是项目部署完成后却无法通过外网访问. 服务器:腾讯云 系统 :CentOS 8.0 64位 处理思路:通过度娘百般摸索 ...

  5. Linux-在新买的阿里云服务器上部署Tomcat并支持外网访问的配置(步骤记录)

    一.首先你得有一台外网上的服务器 华为.腾讯.阿里都有云服务售卖,我这里是在阿里云打折时购买的. 二.使用Xshell和XFTP连接上云服务 当然了,连接工具有很多种,可随意.购买服务器之后,你会收到 ...

  6. frp内网 穿透映射使内网svn可外网访问

    起因 公司svn目前部署在内网服务器上,现在想在家中也可以使用,因此需要外网访问内网的工具 经过 使用过几个产品: utools,一个小巧的windows下的工具,内网映射只是它的一个小功能,支持tc ...

  7. 闲置安卓设备搭建Linux服务器实现外网访问

    title: 闲置安卓设备搭建Linux服务器实现外网访问 这是我搭过的第一个博客系统,写贴纪念一下 待博主整理好思路,将今天所用到的全部分享! 好吧,我就是穷.富人靠科技,穷人靠变异.我这种穷人是真 ...

  8. python restful 框架之 eve 外网访问设置

    官网地址: http://python-eve.org/ 配合mongodb进行crud使用起来很方便,但是部署的时候遇到一个问题,按照官网和Deom说的,servername使用 '127.0.0. ...

  9. docker kafka 外网访问不到

    linux虚拟机中的kafka docker 容器外网显示: 原因: kafka的外网IP端口配置参数设置错误. 原-->设置了容器的IP端口. 改-->设置宿主机的ip以及宿主机上的端口 ...

随机推荐

  1. oracle 主键删除,联合主键的创建

    1,主键的删除  ALTER TABLE TABLENAME DROP PRIMARY_KEY 运行上面的SQL能够删除主键:假设不成功能够用 ALTER TABLE TABLENAME DROP C ...

  2. [C++STDlib基础]关于日期时间的操作——C++标准库头文件<ctime>

    总结 /* A.头文件<ctime> #if _GLOBAL_USING && !defined(RC_INVOKED) _STD_BEGIN 1.四个数据类型 using ...

  3. ThinkPHP 的模型使用详细介绍--模型的核心(七)

    原文:ThinkPHP 的模型使用详细介绍--模型的核心(七) 注意:本节是ThinkPhp框架对数据操作的核心处理部分 大家还是在这里看清楚可以将其剪切放到代码编辑器中查看 本章节给大家着重介绍模型 ...

  4. dtach-linux-分离功能-小工具 - 点点滴滴 Linux | 点点滴滴 Linux

    dtach-linux-分离功能-小工具 - 点点滴滴 Linux | 点点滴滴 Linux dtach-linux-分离功能-小工具 2013年05月20日 ⁄ Linux工具 ⁄ 共 1775字 ...

  5. [置顶] 大量相关gis资源网盘打包下载

    详细请下载附件 所有资源下载(网盘下载): http://laoheitan.bego.cc arcgis教程: http://www.bego.cc/file/23322579 ENVI教程: ht ...

  6. hdu Crazy Circuits

    Crazy Circuits 题目: 给出一个电路板,从+极出发到负极. 如今给你电路板上的最小电流限制,要你在电流平衡的时候求得从正极出发的最小电流. 算法: 非常裸的有源汇最小流.安有源汇最大流做 ...

  7. Android动绘图标——I am not a gif maker,I am a developer

    最早在git上发现一个非常酷眩的动绘图标效果: https://github.com/xuyisheng/tickplusdrawable 不得不说,国外的程序猿在细节的考虑上,确实比我们要好非常多, ...

  8. hdu1025(nlon(n)最长上升子序列)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1025 大致思路:设置两个a,b数组,a数组存储数据,b数组存储最长不降序序列.此算法关键在于设计二分查 ...

  9. hdu 4747【线段树-成段更新】.cpp

    题意: 给出一个有n个数的数列,并定义mex(l, r)表示数列中第l个元素到第r个元素中第一个没有出现的最小非负整数. 求出这个数列中所有mex的值. 思路: 可以看出对于一个数列,mex(r, r ...

  10. SVN的switch命令

    语法就不说了,文档有的是,主要是两个常用的用法: . 切换资源库(svn sw --relocate) [plain] view plaincopy svn sw --relocate <fro ...