一、Flask添加外部网络访问(+主机访问虚拟机)
首先,在虚拟机中进行microblog的编写,却在主机中无法访问到虚拟机的:5000端口的helloworld~
一开始以为是没有分配到IP或者怎么样,可是可以ping通呀。
找呀找,发现
呐~
默认host参数指定为
127.0.0.1
,port指定为5000
。即支持本机从
5000
端口访问。我在vps上测试的时候,外网始终不能访问,其实只需要指定host为0.0.0.0即可让外网任何机器访问。即像这样:app.run(host=’0.0.0.0’)
–来自 让Flask支持外网访问
这样的话,就改一改自己的run.py好啦;
➜ microblog # cat run.py [air]
#!flask/bin/python
from app import app
app.run(debug=True,host='0.0.0.0')
Bingo~可以在主机中访问到 虚拟机IP地址:5000 啦~~
二、用户登录 Open-Id
说实话,一开始看到这个openid登录是不明白的,这是要干嘛,点了也没用。
因为习惯Google登录,然而,根本没有什么用。。。
So,我去查一下OpenId是什么。
OpenID 是一个以用户为中心的数字身份识别框架,它具有开放、分散性。
可是,还是不明白;
于是,我找到了这个:
好吧~~给我解释一下:
Why should I use OpenID?
How do I get an OpenID?
How do I log in with OpenID?
Great!忍不住说一声,还挺简单明了的。
这感觉就像平时要注册网站,真麻烦,用Google登录吧,这种感觉。
使用一个统一的身份标识就好了嘛,不然记那么多过两天就忘记密码了。呐,那我们怎么获得OpenId呢。这个网站说,在不知道的情况下,我们可能已经有了属于自己的OpenId;
仔细看看发现,原来只要有Yahoo 帐号之类的就有一个openid啦~
可是Google这个怎么用不了哎;
本来,看起来,Google也是可以用来登录的。
然而,现在打不开给的网址,应该是取消了这个链接,And,Google的API库里有,可以放在自己的网站上,一个小按钮~
看来回头之后要看看这个 Google OpenIDConnect;
反正,有了自己的Yahoo帐号,在登陆时的小框框里选Yahoo,
然后会蹦出来一个页面,就可以进行认证啦。
三、调试这一节,要两个OpenId
于是,注册了一个openid.org.cn;
学习flask用户登录一节的时候,案例使用的是OpenID认证,但是找不到提供OpenID的站点,Google,Facebook这些你懂的。在绝望的时候发现了http://openid.org.cn/,该网站可以让新手在1分钟内搭建自己的OpenID站点,超级简单方便,好用到想哭。用来做OpenID的客户端代码功能测试实在不能更方便了。
注册OpenID在右边的url:http://openid.org.cn/register
中输入OpenID和密码就可以了。OpenID就是登录的帐号啦。我给自己设置的OpenID是xnow.openid.org.cn
设置角色角色就是你的OpenID站点中的用户啦,openid.org.cn提供了很友好的界面创建和管理角色。添加角色的界面如下图,需要填写的这些信息就是OpenID客户端能够读取到的用户信息了:
就这样~~~
就可以用自己的openid.org.cn登录Flask 啦~~~
真棒~~