第一步 安装环境
打开宝塔面板 安装python项目管理器 2.0
1.9 版本和2.0版本有很大的区别
1.9版本需要手动激活(看其他的博客吧。)
2.0版本不需要手动激活 ,2.0激活虚拟环境文件夹和1.9不一样,不在同一个位置(文件位置看文章后面)。
第二步 打包本地文件
在打包项目源码之前,先在本地环境使用下面的命令把环境依赖包导出到requirements.txt文件里,并把这个文件存放在项目目录下
在pycharm使用命令
pip freeze > requirements.txt
生成压缩包
上传到宝塔 并解压 我存放在 python文件夹中
第三步部署python项目
打开 项目管理器 添加项目
等待添加项目成功,点击映射 输入已经备案好的域名点击提交,等待提交完成即可访问网站
访问网站发现报错
查看日志发现 报错
发现 mysqlclient 模块没有安装访问时报错
Internal Server
点击模块 安装
安装成功
重启该项目 发现报错 是因为没有在 配置文件中 添加当前域名
ALLOWED_HOSTS 设置当前域名
重启当前项目发现当前 网站已经能正常访问
当访问 后台时发现 没有样式 缺少静态资源
在项目根目录 添加文件夹 static 用了保存静态文件
在配置文件 settings.py 中新增配置
并引入os模块
import os
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
重启项目并使用 这条命令收集静态文件
python manage.py collectstatic
进入项目跟目录使用 命令发现报错
那是因为使用的是系统的python 环境 系统 需要使用 python 项目管理器 安装的指定python版本
python 项目管理器 2.0 安装的python 绝对路径在
/www/wwwroot/python/2b9afb89a6acc1575b159bfca38d10ad_venv/bin/python3.8(项目安装使用的python版本)
虚拟环境文件夹是由 _venv 结尾
2b9afb89a6acc1575b159bfca38d10ad_venv 是虚拟环境 的文件夹 python项目管理器2.0 是MD5加密后的名称
2b9afb89a6acc1575b159bfca38d10ad_venv 虚拟环境的 activate 文件在 对应python 版本下的venv/scripts/common 文件夹下
绝对路径是:/www/wwwroot/python/2b9afb89a6acc1575b159bfca38d10ad_venv/lib/python3.8/venv/scripts/common/activate
使用绝对路径的python 环境执行命令发现 os模块没有知道os模块
查看代码发现 忘记引入os模块
执行命令成功
访问网站还是不行 那是因为 没有设置 Nginx 配置文件
设置静态资源路径
location /static/ {
alias /www/wwwroot/python/TestSite/static/; #静态资源路径
}
该文件地址和你新建的 static 文件地址必须一样
刷新网站访问成功