简介
当你在本地开发一个网站的时候,你想要发给别人进行访问,但是又不想放到服务器上面(毕竟上传也是挺麻烦的)。通过内网穿透,你可以直接映射本地的端口,让外网直接访问。这次我介绍的是一款叫Ngrok的软件
Step one 搭建一个本地服务器
我们将使用Django来搭建简单的本地网站。首先确保你已经安装了Python3,并且pip是没问题的。我使用的是windows系统,先打开CMD输入以下命令:
shell
pip install django
由于pip的镜像默认是外国的,下载速度会很慢,所以建议使用国内源安装:
shell
pip install -i https://douban.com/simple django
Django安装完成之后,我们可以使用Django创建一个项目,叫做ngrok_demo(你可以自定义):
shell
django-admin startproject ngrok_demo
然后本地就会多一个ngrok_demo文件夹,我们通过访问这个文件夹:
shell
cd ngrok_demo
这个文件夹下面有一个文件夹ngrok_demo和一个py文件manage.py,我们现在通过manage.py这个文件来启动我们的网站:
shell
python manage.py runserver
启动后,你看到以下信息就说明成功启动了:
接下来我们打开浏览器访问一下我们这个本地网站,输入:http://127.0.0.1:8000/,看到这个页面就说明我们的网站搭建成功了。但是我们也只能在我们的电脑上面访问,如果你要让你的朋友或者同事访问,不放到服务器是不行的。不过这篇文章讲的就是如何不放到服务器,也能让其他人从外网访问你的这个本地网站。
Step two 下载ngrok和注册账号
首先访问它的官网:https://ngrok.com/download下载客户端。
因为是外网,国内下载较慢,我上传到了微云供大家快速下载:
https://share.weiyun.com/5N9SGoE
下载完成后,解压文件夹,你会看到一个ngrok.exe文件。双击打开它。你会看到以下界面:
现在我们还不能使用它,因为还需要申请使用权限,ngrok提供免费的使用,但是你需要先注册账号。我们看一下注册流程:
如果你有Github账号或者Google账号的话直接授权登陆:
没有的话点击免费注册选项,输入姓名和邮件等进行注册:
等待注册完毕后,就会进入管理界面,我们复制画框部分的内容:
来到之前打开的ngrok界面,粘贴刚刚复制的东西,然后回车,注意把前面的 ./ 去掉:
好了,现在我们可以开始外网映射我们本地的网站了。我们的网站的本地网址是http://127.0.0.1:8000/,其中8000是端口。我们需要用ngrok帮我们映射8000端口,让外网可以访问这个端口。
在ngrok界面中,输入 ngrok http 8000
成功的话,你将看到以下界面:
其中 http://38a46b0b.ngrok.io (注意每次映射这个地址都会改变,所以你的和我的会不一样)就是外网的访问地址。我们访问它,就会映射到我们的本地网站。我们在浏览器打开试试:
你看,现在已经映射到本地的网站了,你可能会注意到上面这个错误,这个错误是我们的Django的错误。但是也说明已经成功映射到本地了。这个错误是由于Allow_Host引起的,我们只需要修改ngrok_demo项目中settings.py里面的设置就可以了。下面是修改步骤:
首先打开项目的文件夹:
进入ngrok_demo:
通过编辑器打开settings.py(任何编辑器都可以):
在截图位置的ALLOWED_HOSTS = [ ] 里填入"*",然后保存
现在我们返回刚才的浏览器,再次打开http://38a46b0b.ngrok.io
关注公众号可了解更多外国大神的文章哦
领取专属 10元无门槛券
私享最新 技术干货