在windows平台上部署python web工程(flask)

您所在的位置:网站首页 flask项目怎么部署到云服务器上 在windows平台上部署python web工程(flask)

在windows平台上部署python web工程(flask)

2023-07-20 02:15| 来源: 网络整理| 查看: 265

主要参考:https://www.jianshu.com/p/9af55f90cf6d

背景介绍:本人几年前曾在公有云服务器上部署过python web工程,只记得当时只开了cmd就可以啊。再就是填了个ip换域名。云服务器是租的,域名买了一年。

现有需求:在内网电脑上部署python web工程。

初步实践:1、内网电脑远程登录服务器ip,打开cmd,使用虚拟环境(.\venv\Scripts\python.exe python要运行的文件名称)运行;

                  2、在本地电脑游览器中输入服务器ip及相应的端口号,发现不能游览。

网上查询:在网络上查找到如上链接网页,使用Flask + Tornado + nginx 部署。

再次实践:首先,使用网上查询到的博客中的例子,先跑通给出的例子再说。

Flask 工程包含两个文件:

myflask/ app.py server.py

app.py 为 Flask 程序,代码如下:

from flask import Flask app = Flask(__name__) @app.route('/') def index(): return 'hello flask'

server.py 是一段 Tornado 代码,让 Tornado 作为服务器: 

from tornado.httpserver import HTTPServer from tornado.wsgi import WSGIContainer from app import app from tornado.ioloop import IOLoop s = HTTPServer(WSGIContainer(app)) s.listen(2021) # 监听2021端口 IOLoop.current().start()

在当前目录下通过 python server.py 可以启动 Flask 程序。Tornado 监控2021 端口。 

然后,类似的,运行自己的工程。

在远程服务器中运行 (.\venv\Scripts\python.exe  server.py),在本地电脑游览器中输入远程服务器的ip + 端口号(即2021);

success!!!

实践发现:不用nginx也得实现我的需求啊!以后只用Tornado就可以了。

其实,我是先按照上述博文实践的,使用 Tornado + nginx也可以成功,但是只有一个模块可以正常运行,另外两个模块一直提示我连接超时;我的工程中那两个模块的数据库查看速度较慢,我怀疑是请求时间过长导致的问题,我网上搜索半天也没有解决这个问题。

偶然的,直接只使用Tornado成功访问了,我怀疑了人生。。。不管咋滴,实现需求就行,但是,why?

于是,我又上网搜索了Tornado究竟为何物?

在这篇博文中(https://www.zhihu.com/question/20136991)我看到了这样一句话:Tornado既是一个web server,也是web framework。

so,我没使用nginx也成功了。但是我还是没解决使用 Tornado + nginx成功访问,待到以后解决吧。

 

 

 



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3