用的是CentOS系统(python项目管理器目前只有centos的宝塔才能安装),以下是操作过程,希望大家可以少踩坑
基本情况说明:
- 系统centos
- 宝塔+python项目管理器1.5
- django是2.1版本
操作流程
进入宝塔面板,python项目管理器中进行相关操作
1. 添加项目
| 选项 | 填写说明 |
|---|---|
| 项目名称 | 如blog |
| 路径 | 如 /www/wwwroot/blog/ |
| python版本 | 我选择的是python3.6.8 |
| 启动方式 | gunicorn |
| 启动文件或文件夹 | /www/wwwroot/blog/ |
| 端口 | 如8000,看自己需求 |
| 安装模块依赖 | 勾选 |
| 开机启动 | 勾选 |
其中一些选项说明:
- python版本 可以在【python项目管理器】的【版本管理】中安装各种python版本
- 启动方式 用的是gunicorn,所以在django项目settings.py文件的【INSTALLED_APPS】中添加"gunicorn"
- 安装模块依赖 可以在本地项目开发环境中通过“pip freeze > requirements.txt”导出requirements.txt文件,勾选后【python项目管理器】会根据requirements.txt来安装模块
2. 映射
- 启动项目,输入【映射】的域名(没有也可以输入IP),然后就可以在宝塔面板的【网站】一栏看到刚映射的网站名了
3. 静态文件访问设置
在【网站中】配置下【反向代理】,在{}中最后一行追加如下代码:
location /static/ {
alias /www/wwwroot/blog/mystatic/;
}
location /media/ {
alias /www/wwwroot/blog/media/;
}
其中一些选项说明:
- 我在项目的settings.py文件中STATIC_ROOT的一些配置
ALLOWED_HOSTS = ['*']
Debug = False
STATIC_ROOT = os.path.join(SITE_ROOT, 'mystatic')
# 我用的mystatic,也可以其他的,不要用static,可以少踩坑
- 如果网站admin后台样式没有,可能是你静态文件没导出
#导出静态文件
python manage.py collectstatic
- 如果logo显示不出,在urls文件中添加
from django.views.generic.base import RedirectView
urlpatterns+=[path('favicon.ico', RedirectView.as_view(url='/static/CACHE/favicon.ico'))]