Flask 是一个使用 Python 编写的轻量级 Web 框架(所以我们前面花了那么多时间安装 Python3 呀)。它被称为微型架构,因为其使用非常简单的核心以及功能丰富的扩展。虽然 Flask 内核没有默认的数据库、验证工具等,但是却通过扩展加入了 ORM、验证工具、文件上传、开放式身份验证,可以实现非常强大的 Web 应用。 好啦,那其实 Flask 的安装非常简单
>>>背景:在centos6.5上自带了python2.6.6,然后我自己安装了python3版本。
所以为了区分哪个python执行的py文件,需要使用:python3+py文件。
如下图执行py文件时出现了如下错误:意思是没有flask这个模块。
我们来看看代码,果真第9行引入了这个模块,所以我们的目标就是安装这个库
>>>安装flask库:使用pip安装
#pip3 install flask
出现问题:
原因:
找不到pip安装所需要的ssl模块。系统版本centos6.5,其中openssl的版本为
openssl-1.0.1e-57.el6.i686,而python3.7需要的openssl的版本为1.0.2或者1.1.x,需要对openssl进行升级,并重新编译python3.7.3。yum 安装的openssl 版本都比较低。
解决办法:升级openssl
1.下载openssl
wget https://www.openssl.org/source/openssl-1.1.1a.tar.gz
tar -zxvf openssl-1.1.1a.tar.gz /usr/local/bin
cd /usr/local/bin/openssl-1.1.1a
2.编译安装
mkdir -p /usr/local/openssl
./config --prefix=/usr/local/openssl no-zlib #不需要zlib
make
make install
3.备份原配置
mv /usr/bin/openssl /usr/bin/openssl.bak
mv /usr/include/openssl/ /usr/include/openssl.bak
4.新版配置
ln -s /usr/local/openssl/include/openssl /usr/include/openssl
ln -s /usr/local/openssl/lib/libssl.so.1.1 /usr/local/lib32/libssl.so 这里可能提示没有lib32这个目录,这里可以新建一个mkdir lib32
ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl
5.修改系统配置
写入openssl库文件的搜索路径
echo "/usr/local/openssl/lib" >> /etc/ld.so.conf
使修改后的/etc/ld.so.conf生效
ldconfig -v
6.查看openssl版本
openssl version,如下图,这就代表升级成功啦。
可能出现问题:openssl version 提示:
/usr/local/openssl/bin/openssl: error while loading shared libraries: libssl.so.1.1: cannot open shared object file: No such file or directory
假如你的libssl.so.1.1 文件在/usr/local/openssl/lib/下面,可以这样做
ln -s /usr/local/openssl/lib/libssl.so.1.1 /usr/lib32/libssl.so.1.1
ln -s /usr/local/openssl/lib/libcrypto.so.1.1 /usr/lib32/libcrypto.so.1.1
7、 重新安装python3
./configure --prefix=/usr/local/python3 --with-openssl=/usr/local/openssl
make
make install
>>>再次安装flask库
在python3的安装目录的bin目录下
#pip3 install flask
下载中....
验证安装成功./flask --version
>>>再次运行py文件
靠,又报错了!!!!
出现问题:警告:这是开发服务器。不要在生产部署中使用它
哈哈
原因:
哈哈
解决办法:
kill掉80端口的进程
ps -ef|grep httpd|grep -v grep|awk '{print $2}'|xargs kill -9
netstat -tunlp|grep 80
ps -ef |grep httpd
如下图:在运行啊
不过这个环境问题,如何解决呀,创建虚拟环境????