前言
最近写了几个Django项目,写完以后怎么让对方测试成了问题,因为之前都是自己在本地写的练习项目,对于部署这一块很陌生,不知道怎么操作,内心很忐忑。没办法,只能硬着头皮上,一边百度,一边摸索,以下是我自己总结的用宝塔面板部署Django程序的步骤,希望看完对你能有帮助。
DEBUG = False ALLOWED_HOSTS = ['*'] STATIC_ROOT = BASE_DIR / 'static' # 如果还有media文件等,这里也要注明,如: MEDIA_ROOT = BASE_DIR / 'media'
注意这里的urls.py不是应用的urls.py
urlpatterns = [ path('admin/', admin.site.urls, name="admin"), path('', include("app01.urls")), # 将应用的urls 加入到 urlpatterns 中 re_path(r'^static/(?P.*)$', serve, {'document_root': settings.STATIC_ROOT}, name='static'), ]
可以在终端输入
python manage.py collectstatic
也可以在pycharm的manage.py任务里运行
collectstatic
命令执行后,会在项目里创建static文件夹
├─app01 ├─generator_query ├─publicstatic ├─static # 静态文件 ├─templates └─__pycache__
在终端输入
`pip freeze > requirements.txt`
安装宝塔面板的方式和命令宝塔官网已经给了很明确的说明,这里就不再赘述,建议选择仅宝塔面板
需要安装的应用有3个:
python项目管理器 2.0
nginx 1.20
mysql 我这里安装的是8.0
建议先更改一下数据库的root密码,默认密码是admin
创建数据库并导入数据
导入本地数据库的数据
这里需要注意,Django自带的sqlite3和mysql不同版本的数据导入会报错,我本地和服务器用的mysql版本一样,可以正常导入。
上传文件需包含
解压文件到当前路径
解压后
安装python,因为我本地用的是3.8.2,这里只有3.8.5版本可以选择
这里发现的问题是,可能点击“版本管理”的时候会显示请求失败,解决办法就是卸载“python项目管理器”后重新安装。
添加项目成功后打开模块发现并未安装依赖文件里的包,不知道是什么原因,但是可以换一种安装方式,因为python项目管理器在部署的时候已经帮我们创建好了虚拟环境,直接激活他的虚拟环境,然后用pip安装
在宝塔终端输入
find / -name activate
搜一下虚拟环境入口
注意这里的“1407f88cddcd38b6fbb5d853581df1d1_venv”与我们上传文件路径下面的文件夹名一致,这个就是python项目管理器创建好的虚拟环境
然后激活虚拟环境
source /www/wwwroot/querydata/generator_query/1407f88cddcd38b6fbb5d853581df1d1_venv/lib/python3.8/venv/scripts/common/activate
按照python项目管理器的提示,在终端输入
/www/wwwroot/querydata/generator_query/1407f88cddcd38b6fbb5d853581df1d1_venv/bin/pip list
查看当前环境安装的python包
如果这一步成功了,那我们可以用它来安装依赖文件。
首先,找到依赖文件的路径,找到requirements.txt后,右键-属性,复制路径
然后激活虚拟环境后在终端输入以下命令就可以安装了
/www/wwwroot/querydata/generator_query/1407f88cddcd38b6fbb5d853581df1d1_venv/bin/pip install -r /www/wwwroot/querydata/generator_query/requirements.txt
查看安装好的模块
如果你不想这么麻烦,可以在python项目管理器里面点击“模块”,然后手动安装。
可以看到,依赖文件的包都已经安装了。
国内的域名都需要备案,没备案的无法设置域名访问,因为在部署的时候我设置了端口为9001,只需要在宝塔面板的“安全”里和服务器的安全策略中修改“入方向规则”,放行“9001”端口,就可以用IP:9001的方式访问
由于我租用的是HongK的服务器,所以可以用域名访问。在项目管理里面点击映射,添加域名
添加服务器IP
域名访问
以上是我个人的经验总结,希望对看到的人能有所帮助。我没有系统的学过计算机编程,一切都源于爱好,喜欢折腾,大家不喜勿喷。
点击下方安全链接前往获取
CSDN大礼包:《Python入门&进阶学习资源包》免费分享
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
这些资料都是非常不错的,朋友们如果有需要《Python学习路线&学习资料》,点击下方安全链接前往获取
CSDN大礼包:《Python入门&进阶学习资源包》免费分享
本文转自 网络,如有侵权,请联系删除。
上一篇:看懂PLSQL执行计划