python 项目的创建和部署

创建 一个文件夹:

mkdir python_test
cd python_test

初始化虚拟环境

python3 -m venv venv

激活虚拟环境

source venv/bin/activate

创建主文件app.py

cd python_test
touch app.py
比如代码:
from flask import Flask

app = Flask(name)

@app.route('/')
def hello():
return 'Hello, World!'

if name == 'main':
app.run(host='0.0.0.0', port=5000)

安装依赖并写入 requirements.txt

pip install flask
pip freeze > requirements.txt

运行 python3 app.py

  • Serving Flask app 'app'
  • Debug mode: off
    WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.
  • Running on all addresses (0.0.0.0)
  • Running on http://127.0.0.1:5001
  • Running on http://192.168.3.35:5001

在浏览器输入http://192.168.3.35:5001 可以输入,即可以

在某个站点下配置这上面的这个:

点击【添加站点】
• 域名:填写你的域名 www.xxxxx.com
• 根目录:选择 /www/wwwroot/python_test
• PHP版本:选择「纯静态」或「不启用 PHP」
• 其他默认即可
3. 完成后,你的域名就会显示在站点列表里

设置反向代理到你的 Flask 项目

1.  点击你新建的这个站点【设置】
2.  找到【反向代理】,点击【添加反向代理】
•   代理名称:flask
•   目标地址:http://127.0.0.1:5001(你 gunicorn 正在监听的端口)
•   启用:✅
•   缓存:❌
3.  保存并重载配置或重启网站

打开浏览器测试

现在你访问 https://www.xxx.com/,就应该访问到你的 Flask 项目了。

Nginx 可以代理多个服务,比如:
location /api/ {
proxy_pass http://127.0.0.1:5000;
}

location /admin/ {
proxy_pass http://127.0.0.1:5001;
}
在宝塔中的,就是设置反向代理:

通过git上传本地的代码,在服务器中,也是通过git 进行代码管理的

Traceback (most recent call last):
File "/Users/zhangjinlin/Desktop/python_project/python_test/app.py", line 1, in <module>
from flask import Flask
为什么用vscode一直提示这个,用终端直接跑python3 app.py 都没有问题

方法 1:手动切换 VS Code 的 Python 解释器
1. 打开你的项目文件夹(已经打开了就跳过)。
2. 在 VS Code 里按下:Cmd + Shift + P(或 F1)打开命令面板。
3. 输入:Python: Select Interpreter
4. 选择你真正在用的 Python(比如带有 /opt/homebrew 路径的,或者包含你虚拟环境名的)。
• 看起来你的是:/opt/homebrew/bin/python3 或者 /opt/homebrew/lib/python3.11/...

选对了之后,再运行一次,问题应该就没了。

我的是/opt/homebrew/lib/python3.11

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容