centos8+Flask+apache等Flask部署操作(跳跃各种坑)
1 安装apache和开通防火墙
-
1查看防火墙状态并开通端口
systemctl status firewalld 开放8080 firewall-cmd --add-port=8080/tcp --permanent 开放80 firewall-cmd --add-port=80/tcp --permanent
-
2 安装apache 其中httpd也就是apache的别名
yum install httpd ```
-
3 启动apache服务并使其在系统启动时启动
systemctl start httpd 在系统启动时启动 systemctl enable httpd 重启(这个在配置文件的时候经常用) systemctl restart httpd
在centos8中apache中部署flask项目
前提:已经安装python 等各种需要的包,比如flask , gevent等
-
1 创建flask项目
我是在windows上完成flask的开发后在虚拟机上部署的。最后flask这个文件夹整个放在了/var/www/中了,与html同级目录
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-bsdXaBF3-1587701292012)()]
创建的项目目录:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ABlvjMDR-1587701292014)(C:\Users\zhu_g\AppData\Roaming\Typora\typora-user-images\image-20200423161501091.png)]
-
apache httpd 在:/etc/httpd/conf.d中增加一个.conf文件(告诉apache你的项目在哪,通过什么端口访问等信息)
比如我的文档名字app.conf
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7uzo658E-1587701292015)]
app.conf中的内容为
NameVirtualHost *:8080
<VirtualHost *:8080>
ServerName example.com
WSGIDaemonProcess flask_qs threads=5
WSGIScriptAlias / /var/www/flask_qs/app.wsgi
<Directory /var/www/flask_qs>
WSGIProcessGroup flask_qs
WSGIApplicationGroup %{GLOBAL}
Order deny,allow
Allow from all
</Directory>
</VirtualHost>
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-TqvXhz1w-1587701292017)]
-
添加wsgi文件(用户告诉apache去哪启动,把剩下的寻找数据的任务给谁)
和app.py同目录添加一个文件xxx.wsgi
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3mWR8UxA-1587701292019)(C:\Users\zhu_g\AppData\Roaming\Typora\typora-user-images\image-20200423162542424.png)]
xxx.wsgi的内容
import sys sys.path.insert(0,'/var/www/flask_qs') from app import app as application
然后重启服务器,就可以访问了。
跳坑秘籍
-
1 安装python的坑
如果前面的项目启动有问题,那么我们可以去看httpd的log中的错误日志,其中我的项目是可以的,刚开始遇到了没有安装Flask,然后没有安装IPy,gevent等各种包,然后其中gevent最难安装。
安装gevent出错
httpd中的log日志提示: Unable to find a python-devel
Error: must have python development packages for 2.4, 2.5, 2.6 or 2.7. Could not find Python.h.Please install python2.4-devel, python2.5-devel, python2.6-devel or python2.7-devel
解决方案
如果你使用的是centOS系统,或者支持yum的系统,那么可以通过如下方式进行安装:
yum search python | grep -i devel
通过上面命令会找到devel开发包,你会看到这名字(python-devel.x86_64)然后就执行这个安装,然后再运行下面命令进行安装:
yum install python-devel.x86_64
令会找到devel开发包,你会看到这名字(python-devel.x86_64)然后就执行这个安装,然后再运行下面命令进行安装:
yum install python-devel.x86_64
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/119310.html