Centos7:Flask-Apache部署

这篇具有很好参考价值的文章主要介绍了Centos7:Flask-Apache部署。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

系列文章目录

RHCE第0章:RHCE开始前的准备
RHCE第1章:Web服务器(上)
RHCE第1章:Web服务器(下)
RHCE第2章:DNS服务
RHCE第3章:DHCP服务器
RHCE第4章:Firewall服务、
RHCE第5章:SELinux
RHCE第6章:nfs网络文件系统
RHCE第7章:samba文件共享
RHCE第8章:链路聚合和桥接
RHCE第9章:KVM虚拟化技术
RHCE第10章:时间服务器
RHCE第11章:Mariadb数据库(上)
RHCE第11章:Mariadb数据库(中)
RHCE第11章:Mariadb数据库(下)
RHCE第11章:Mariadb数据库(后)
RHCE第12章:FTP服务
RHCE第13章:ISCSI存储网络
RHCE第14章:邮件服务器
RHCE第15章:Kickstart
Centos7:http/PhP升级
Centos7:Flask-Apache部署



前言

之前写过几个Flask网页来完成一些操作,一直使用的都是Screen+uwsgi所以在并发上边支持的不太好(反正就我自己用),但最近完成的一个项目,对并发要求稍微高一点,前几天也在升级软件,就顺便把Flask的安装部署也记录一下。


一、安装Python虚拟环境

1.编译安装

我使用的是Flask==2.1.2官方的最新稳定版。官方建议Python环境使用3.7以上,所以我选择了3.8.5版本编译安装。
官方下载地址
Centos7:Flask-Apache部署,flask,apache,python
下载完成后上传服务器,解压-编译-安装

tar -xvf Python-3.8.5.tar.xz 
cd Python-3.8.5
./configure --enable-shared
make
make install

Centos7:Flask-Apache部署,flask,apache,python
安装完成之后,会自动添加到环境变量

2.虚拟环境创建

自己选择一个合适的地方创建虚拟环境。

 python3 -m venv flask
 source flask/bin/activate

Centos7:Flask-Apache部署,flask,apache,python
现在可以通过pip命令导入自己需要的包。

二、安装mod_wsgi

官方教程中,可以使用yum命令安装,但实际操作不行,所以还是选择编译安装。
mod_wsgi 4.9.4下载
Centos7:Flask-Apache部署,flask,apache,python
编译的时候要指定之前安装好的apache和python

tar -xvf mod_wsgi-4.9.4.tar.gz
cd mod_wsgi-4.9.4
./configure --with-apxs=/usr/local/apache2/bin/apxs --with-python=/opt/env/flask/bin/python3
make
make install

之后将安装的模块添加到apache中
Centos7:Flask-Apache部署,flask,apache,python

三、编写配置文件

1.flask文件

在自己的项目,目录下创建wsgi.py文件
Centos7:Flask-Apache部署,flask,apache,python
具体内容如下

activate_this = '/opt/env/flask/bin/activate_this.py'
with open(activate_this) as file_:
    exec(file_.read(), dict(__file__=activate_this))


import sys
sys.path.insert(0, "/var/www/web")

from app import app as application

这时固定写发只有这里面只有两个参数需要改变,一个是第一行的虚拟环境路径,一个是第五行的自己的项目目录路径。

2.虚拟环境文件

第一个文件在虚拟环境中是不存在的,需要我们自己创建
具体内容也是固定写法
vim /opt/env/flask/bin/activate_this.py

"""By using execfile(this_file, dict(__file__=this_file)) you will
activate this virtualenv environment.

This can be used when you must use an existing Python interpreter, not
the virtualenv bin/python
"""

try:
    __file__
except NameError:
    raise AssertionError(
        "You must run this like execfile('path/to/activate_this.py', dict(__file__='path/to/activate_this.py'))")
import sys
import os

old_os_path = os.environ['PATH']
os.environ['PATH'] = os.path.dirname(os.path.abspath(__file__)) + os.pathsep + old_os_path
base = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
if sys.platform == 'win32':
    site_packages = os.path.join(base, 'Lib', 'site-packages')
else:
    site_packages = os.path.join(base, 'lib', 'python%s' % sys.version[:3], 'site-packages')
prev_sys_path = list(sys.path)
import site
site.addsitedir(site_packages)
sys.real_prefix = sys.prefix
sys.prefix = base
# Move the added items to the front of the path:
new_sys_path = []
for item in list(sys.path):
    if item not in prev_sys_path:
        new_sys_path.append(item)
        sys.path.remove(item)
sys.path[:0] = new_sys_path

3.httpd文件

编写apache的conf文件
最底下添加一行,意思是将这个目录下的.conf文件都导入
Centos7:Flask-Apache部署,flask,apache,python
编写.conf文件(前缀随意)

Listen 5000(可以自己设定端口)
<VirtualHost *:5000>
    ServerName 你的域名

    WSGIDaemonProcess web user=www group=www threads=5
    WSGIScriptAlias / /var/www/web/wsgi.py(你的配置文件)


    ErrorLog /var/www/web/error.log(日志目录)
    CustomLog /var/www/web/access.log combined
    DocumentRoot /var/www/web(项目目录)

    <Directory /var/www/web>
        WSGIProcessGroup web(项目名称)
        WSGIApplicationGroup %{GLOBAL}
        Require all granted
    </Directory>
</VirtualHost>

然后重启apache服务器,浏览器访问即可。
Centos7:Flask-Apache部署,flask,apache,python

注意 一些常用的运维知识,比如服务器开放端口之类,请自行学习,也可以看我的RHCE系列专栏。


总结

至此Flask-Apache的部署完成文章来源地址https://www.toymoban.com/news/detail-610214.html

到了这里,关于Centos7:Flask-Apache部署的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • centos7搭建apache服务(基于域名和IP访问,用户访问控制)

    我们搭建apache服务我们从几个访问方法搭建 目录 一基于IP访问 二.基于域名访问 三.基于我们用户访问 yum源安装服务 (yum -y install httpd) 四,基于用户访问控制  让防火墙放行http服务,关闭增强模式(因为我前面以及运行过firewall-cmd --permanent --add-service=http所以会出现Warning:

    2024年02月02日
    浏览(41)
  • centos7搭建apache作为文件站后,其他人无法访问解决办法

    在公司内网的一个虚拟机上搭建了httpsd服务,准备作为内部小伙伴们的文件站,但是搭建好之后发现别的小伙伴是无法访问我机器的。 于是寻找一下原因,排查步骤如下: 1.netstat -lnp 和 ps aux 先看下端口和 服务情况 发现均正常 2.自己查看自己的服务是否正常 通过curl 发现正

    2024年02月11日
    浏览(50)
  • 谨慎Apache-Zookeeper-3.5.5以后在CentOS7.X安装的坑

    目录 前言 一、现场还原  二、问题诊断 三、问题原因  总结         最近由于项目需要,在服务器上需要搭建Hbase完全分布式集群环境。开发环境,采用的是最小节点的方式进行搭建(即3个节点的模式)。资源环境列表如下: 序号 依赖组件 说明 1 jdk-8u201-linux-x64.tar.g

    2024年02月05日
    浏览(39)
  • CentOS 7系统下Apache服务部署

    对前篇博客(十七)进行一个修正与补充 基于不同的端口号,实现多虚拟主机部署并访问 描述 IP地址 Apache服务器 192.168.118.115 116.xxx.com 192.168.118.115:80 117.xxx.com 192.168.118.115:81 Apache 是一个web服务器提供者,web中间件,可在多种操作系统上运行,能够提供html文本文档的传输,

    2024年02月16日
    浏览(30)
  • CentOS 7 保姆级图文详细安装部署Apache教程

    目录 前言 一、HTTP协议介绍 二、安装依赖 三、安装apr 四、APR-util安装 五、apr-iconv安装 六、Apache安装 七、启动和测试Apache 国外官方 Apache 相关组件官方下载列表:Apache Distribution Directory  国内阿里源官方 Apache 相关组件官方下载列表(下载速度快):apache安装包下载_开源镜像

    2023年04月17日
    浏览(47)
  • 如何在CentOS使用docker-compose部署Apache Superset并实现公网访问

    Superset是一款由中国知名科技公司开源的“现代化的企业级BI(商业智能)Web应用程序”,其通过创建和分享dashboard,为数据分析提供了轻量级的数据查询和可视化方案。Superset在数据处理和可视化方面具有强大的功能,能够满足企业级的数据分析需求,并为用户提供直观、灵

    2024年01月25日
    浏览(69)
  • CentOS部署Apache Superset大数据可视化BI分析工具并实现无公网IP远程访问

    Superset是一款由中国知名科技公司开源的“现代化的企业级BI(商业智能)Web应用程序”,其通过创建和分享dashboard,为数据分析提供了轻量级的数据查询和可视化方案。Superset在数据处理和可视化方面具有强大的功能,能够满足企业级的数据分析需求,并为用户提供直观、灵

    2024年04月09日
    浏览(51)
  • 模型部署flask学习篇(二)---- flask用户登录&用户管理

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 在学习机器学习或者深度学习后,我们常常会将自己训练好的模型来进行部署或者可视化出来,供自己或者别人来使用,那么python的flask框架就可以作为选择之一。 1、 flask路由:可以接收get请求和post请求

    2024年01月25日
    浏览(38)
  • 模型部署flask学习篇(一)---- flask初始及创建登录页面

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 在学习机器学习或者深度学习后,我们常常会将自己训练好的模型来进行部署或者可视化出来,供自己或者别人来使用,那么python的flask框架就可以作为选择之一。 安装 如何使用flask打印 hello world 总结

    2024年01月24日
    浏览(43)
  • CentOS系统安装Apache

    目录 一、理论 1.Apache主配置文件分析  2.客户机地址限制原理 二、实验 1.CentOS系统安装Apache  2.限制访问 在CentOS系统中,Apache主配置文件的路径为/etc/httpd/conf/httpd.conf,使用命令 vim /etc/httpd/conf/httpd.conf打开Apache主配置文件。文件较长,在末行模式下输入 :set nu 显示行号,方便

    2024年02月07日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包