阿里云服务器 debian9 apache2 部署flask+wsgi 过程总结

简介:

由于阿里云镜像自带的源更新比较缓慢,最新的python3版本还是3.5,而我的代码使用的库需要python3.6+,因此需要先更新debian源:

vim /etc/apt/sources.list

在其中添加:

deb http://mirrors.163.com/debian/ testing main

执行:

apt-get update
apt-get install python3.6 python3.6-dev python3.6-distutils
apt-get install python-pip

安装wsgi:

sudo apt-get install libapache2-mod-wsgi-py3

在/etc/apache2/sites-available中新建flask.conf文件,在其中输入:

WSGIPythonPath /var/www/html/flask

<VirtualHost *:80>
    # The ServerName directive sets the request scheme, hostname and port that
    # the server uses to identify itself. This is used when creating
    # redirection URLs. In the context of virtual hosts, the ServerName
    # specifies what hostname must appear in the request's Host: header to
    # match this virtual host. For the default virtual host (this file) this
    # value is not decisive as it is used as a last resort host regardless.
    # However, you must set it for any further virtual host explicitly.

    ServerName flask.yunwei123.tech
    # ServerAdmin webmaster@localhost
    DocumentRoot /var/www/html/flask

    # Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
    # error, crit, alert, emerg.
    # It is also possible to configure the loglevel for particular
    # modules, e.g.
    #LogLevel info ssl:warn

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
    
    WSGIScriptAlias / /var/www/html/flask/app.wsgi

     <Directory /var/www/html/flask>
    Require all granted  
    <Files app.wsgi>                                                                                                                                                      
        Allow from all
    </Files>
        </Directory>
    
    # For most configuration files from conf-available/, which are
    # enabled or disabled at a global level, it is possible to
    # include a line for only one particular virtual host. For example the
    # following line enables the CGI configuration for this host only
    # after it has been globally disabled with "a2disconf".
    #Include conf-available/serve-cgi-bin.conf
</VirtualHost>

# vim: syntax=apache ts=4 sw=4 sts=4 sr noet

保存。

在网站根目录(这里是)新建app.wsgi文件,输入:

from server import app as application

再在同一个目录下新建server.py, 输入:

from flask import Flask
import platform 
print(platform.python_version())
app = Flask(__name__)
 
@app.route('/')
def hello_world():
    return platform.python_version()
 
if __name__ == '__main__':
    app.run(host='0.0.0.0')

打开网页就可以看到啦。


这里搭建的网页:

使用 flask + pyechart 搭建的简单新冠肺炎疫情数据可视化交互分析平台,包含疫情数据获取、态势感知、预测分析、舆情监测等任务:http://flask.yunwei123.tech/进行查看

包含完整代码和实现的github地址:
https://github.com/yunwei37/COVID-19-NLP-vis

相关实践学习
通义万相文本绘图与人像美化
本解决方案展示了如何利用自研的通义万相AIGC技术在Web服务中实现先进的图像生成。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情:&nbsp;https://www.aliyun.com/product/ecs
目录
相关文章
|
2月前
|
存储 测试技术 数据安全/隐私保护
【Docker项目实战】使用Docker部署dufs文件服务器
【Docker项目实战】使用Docker部署dufs文件服务器
372 17
【Docker项目实战】使用Docker部署dufs文件服务器
|
3月前
|
人工智能 监控 数据挖掘
6/14 上海,Apache Doris x 阿里云 SelectDB AI 主题线下 Meetup 正式开启报名!
6 月 14 日,由 Apache Doris 社区、飞轮科技、阿里云联合发起的湖仓数智融合、AI 洞见未来:Apache Doris x 阿里云 SelectDB 联合 Meetup 将在上海·汇付天下总部大楼正式开启,邀您一同探索 AI 与数据分析的融合实践!
294 76
|
2月前
|
Java Linux 网络安全
Linux云端服务器上部署Spring Boot应用的教程。
此流程涉及Linux命令行操作、系统服务管理及网络安全知识,需要管理员权限以进行配置和服务管理。务必在一个测试环境中验证所有步骤,确保一切配置正确无误后,再将应用部署到生产环境中。也可以使用如Ansible、Chef等配置管理工具来自动化部署过程,提升效率和可靠性。
248 13
|
3月前
|
Ubuntu 安全 数据安全/隐私保护
在Docker容器中部署GitLab服务器的步骤(面向Ubuntu 16.04)
现在,你已经成功地在Docker上部署了GitLab。这就是我们在星际中的壮举,轻松如同土豆一样简单!星际旅行结束,靠岸,打开舱门,迎接全新的代码时代。Prepare to code, astronaut!
317 12
|
2月前
|
弹性计算 运维 Linux
3分钟幻兽帕鲁游戏链接服务器一键部署教程,基于阿里云服务器
本教程介绍如何使用阿里云服务器快速部署《幻兽帕鲁》联机服务,支持与好友联机游戏。内容包括服务器配置、计费说明、服务创建及登录游戏步骤,同时提供存档管理与配置修改方法,助您轻松搭建专属游戏服务器。
|
3月前
|
定位技术 数据中心
安徽京准电钟分享:NTP授时服务器极速部署指南
安徽京准电钟分享:NTP授时服务器极速部署指南
218 14
|
4月前
|
人工智能 安全 Shell
Jupyter MCP服务器部署实战:AI模型与Python环境无缝集成教程
Jupyter MCP服务器基于模型上下文协议(MCP),实现大型语言模型与Jupyter环境的无缝集成。它通过标准化接口,让AI模型安全访问和操作Jupyter核心组件,如内核、文件系统和终端。本文深入解析其技术架构、功能特性及部署方法。MCP服务器解决了传统AI模型缺乏实时上下文感知的问题,支持代码执行、变量状态获取、文件管理等功能,提升编程效率。同时,严格的权限控制确保了安全性。作为智能化交互工具,Jupyter MCP为动态计算环境与AI模型之间搭建了高效桥梁。
296 2
Jupyter MCP服务器部署实战:AI模型与Python环境无缝集成教程
|
4月前
|
安全 Apache 数据库
【倒计时3天】NineData x Apache Doris x 阿里云联合举办数据库技术Meetup,5月24日深圳见!
5月24日,NineData联合Apache Doris与阿里云在深圳举办数据库技术Meetup。活动聚焦「数据实时分析」与「数据同步迁移」两大领域,邀请行业专家分享技术趋势、产品实践及解决方案,助力企业构建高效安全的数据管理体系。时间:14:00-17:30;地点:深圳新一代产业园2栋20楼会议室。线下名额有限(80人),速报名参与深度交流!
91 1
|
6月前
|
JavaScript 应用服务中间件 nginx
Vue项目部署:如何打包并上传至服务器进行部署?
以上就是Vue项目打包及部署的方法,希望对你有所帮助。描述中可能会有一些小疏漏,但基本流程应该没有问题。记住要根据你的实际情况调整对应的目录路径和服务器IP地址等信息。此外,实际操作时可能会遇到各种问题,解决问题的能力是每一位开发者必备的技能。祝你部署顺利!
1200 17
|
1月前
|
Ubuntu Linux 索引
Centos 7、Debian及Ubuntu系统中安装和验证tree命令的指南。
通过上述步骤,我们可以在CentOS 7、Debian和Ubuntu系统中安装并验证 `tree`命令。在命令行界面中执行安装命令,然后通过版本检查确认安装成功。这保证了在多个平台上 `tree`命令的一致性和可用性,使得用户无论在哪种Linux发行版上都能使用此工具浏览目录结构。
199 78

热门文章

最新文章