背景:听哥们说了个工具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. CF 17B Hierarchy

    Nick's company employed n people. Now Nick needs to build a tree hierarchy of «supervisor-surbodinat ...

  2. 框架学习之道:PE框架简介

    1.PE框架开发新功能所需的部分 2.PE框架工作流程(重要) 首先根据<transcation>中的id号,找到模板(template),然后再根据模板找到责任链(chain),一旦确认 ...

  3. linux ifconfig命令使用详解

    Linux下网卡命名规律:eth0,eth1.第一块以太网卡,第二块.lo为环回接口,它的IP地址固定为127.0.0.1,掩码8位.它代表你的机器本身. 1.ifconfig是查看网卡的信息. if ...

  4. 设置Mysql的连接超时参数

     在Mysql的默认设置中,如果一个数据库连接超过8小时没有使用(闲置8小时,即   28800s),mysql server将主动断开这条连接,后续在该连接上进行的查询操作都将失败,将   出现:e ...

  5. 开启cocos2dx 3.0的Console功能

    下面内容用于自己知识的备忘,想看具体内容,请參照例如以下地址. 原英文文地址: http://discuss.cocos2d-x.org/t/cocos3-0-tutorial-console-tut ...

  6. No-Touch Integration 在SharePoint中使用社区支持的Silverlight应用程序

    No-Touch Integration 在SharePoint中使用社区支持的Silverlight应用程序         No-Touch Integration应该是最简单的方法了.将Silv ...

  7. [cocos2d-x]屏幕自适应解决的方法

    近期在写一个项目,要求pc,ipad,andriod平台上都能够执行,所以选择用cocos2d-x来开发. 我们的资源大小是1024*768的,在pc上和苹果上都是没有问题的,但是到了andriod上 ...

  8. iOS安全攻击和防御(24):敏感的保护方案逻辑(1)

    iOS安全攻击和防御(24):敏感的保护方案逻辑(1) Objective-C代码easy被hook.暴露信息太赤裸裸,为了安全,改用C来写吧! 当然不是所有代码都要C来写,我指的是敏感业务逻辑代码. ...

  9. exit()和_exit()和return

    exit()和return的差别: 依照ANSI C,在最初调用的main()中使用return和exit()的效果同样. 但要注意这里所说的是"最初调用".假设main()在一个 ...

  10. Nginx特点

    Nginx特点:1,跨平台:Nginx 能够在大多数 Unix like OS编译执行,并且也有Windows的移植版本号.2,配置异常简单:很easy上手.配置风格跟程序开发一样,神一般的配置.3, ...