Last active
September 14, 2017 05:50
-
-
Save willwhui/882ca2713ad4b096fef80adf3e3d69e7 to your computer and use it in GitHub Desktop.
搭建api.ai webhook(在sentris.net的vps上使用python+flask+jinja)
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
搭建api.ai webhook(在sentris.net的vps上使用python+flask+jinja) |
本地python3.5用不了flask
本地ubuntu14.04:
有python 2.7, 3.4两个预装的版本以及一个为了和服务器保持一致自行安装的python3.5
因为无法使用OpenSSL 停止在此vps上搭建web服务
原因:内存太小无法编译
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
支持https
按照python flask搭建https安全协议提到的方法,安装并使用openssl
安装的时候使用
pip3 install pyOpenSSL
因为本地没有安装pip
然而,使用ad-hoc作为ssl context并没有成功,在本地python3.4下运行python3 app.py之后报错:
TypeError: Using ad-hoc certificates requires the pyOpenSSL library.
werkzeug.serving展示的源码是:
这错误看起来是pythone3认为没有openssl。
于是按照这里的方法
sudo apt-get update
sudo apt-get install python3-openssl
虽然也安装成功了,但是依然显示同样的错误。。。
ps,这里提到了flask使用ssl指定自己的context一种方法。
(以及一个bug?)
在python3命令行下执行
form OpenSSL import crypto
提示没有cryptography
于是按照这里的说明安装cryptography:
注意:
文章中
pip install crpytography
是作者拼错了,应为:pip install cryptography
落实到我这里应该是:
pip3 install cryptography
所以不要copy/paste他的。
这样就好了。
总结,估计正确的方法是:
VPS下:
sudo pip3 install cryptography
出错
error: command 'x86_64-linux-gnu-gcc' failed with exit status 4
看起来是VPS的内存太小:
dmesg | tail
显示:
尝试建立swap分区:
运营商关闭了建立swap的能力。。。
尝试把本地的拷贝到服务器上去:
首先sudo find / -name "cryptography",找到需要拷贝的目录
然后scp -P port-number -r source-dir [email protected]:dest-parent-dir
然后设置python path
sudo vi /etc/profile
增加export PATH=<你要加入的路径>:$PATH
但是,运行python3 app.py时,依然找不到依赖的包_openssl
貌似这个包是编译时产生的。