将Django项目部署到服务器
- 效果
- 准备云服务器
- 服务器链接xshell 安装宝塔
- 进入宝塔
- 添加站点
- 打包本地django文件上传
- 宝塔面板安装python管理器
- django配置文件
- 配置数据库
- 启动
- 细节问题
效果
访问该网址即可得到在pycharm上一样的效果。
准备云服务器
购买的是腾讯的轻量应用服务器
服务器链接xshell 安装宝塔
服务器连接xshell
我这里linux系统为
此系统安装宝塔脚本命令
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh ed8484bec
宝塔官网
进入宝塔
服务器开放端口。因为宝塔的端口号是8888,所以需要在服务器上开放这个端口。
输入bt,在输入14获取外网址,账号,密码就可登录进宝塔
安装推荐应用
添加站点
尝试访问ip
如果有,恭喜你,你的站点已经创建成功,那么就没问题。
打包本地django文件上传
注意requirements.txt文件,这个文件包含的是本项目所要用的依赖。可以进入项目目录,使用命令生成。可以删除很多用不上的,避免后续装很久,当然后面没有的话也可以在linux面板使用命令导入
pip freeze >requirements.txt
宝塔面板安装python管理器
配置python环境
django配置文件
启动项目所需要的uwsgi.ini放在该目录
uwsgi.ini文件包含的内容 注意这两行需要修改成自己的
#添加配置选择 [uwsgi] #配置和nginx连接的socket连接(注意此处端口号) socket=127.0.0.1:8000 #配置项目路径,项目的所在目录(改为自己项目目录路径) chdir=/www/wwwroot/1.14.122.151/ #配置wsgi接口模块文件路径,wsgi.py这个文件所在的目录(改为自己项目目录路径) wsgi-file=mytest/wsgi.py #配置启动的进程数 processes=4 #配置每个进程的线程数 threads=2 #配置启动管理主进程 master=True #配置存放主进程的进程号文件 pidfile=uwsgi.pid #配置dump日志记录 daemonize=uwsgi.log
配置站点文件 对应的换成自己的地址 端口要一致
location / { include uwsgi_params; uwsgi_pass 127.0.0.1:8000; #端口要和uwsgi里配置的一样 uwsgi_param UWSGI_SCRIPT mytest.wsgi; #wsgi.py所在的目录名+.wsgi uwsgi_param UWSGI_CHDIR /www/wwwroot/1.14.122.151/; #项目路径 } location /static/ { alias /www/wwwroot/1.14.122.151/static/; #静态资源路径 }
配置数据库
配置数据库连接
终端使用命令,迁移models中有的数据字段。 能够迁移成功,证明数据库连接没问题
python manage.py makemigrations
python manage.py migrate
启动
在python管理器中添加项目启动。
最终效果,访问该网址,即可得到在pycharm上的效果。
总结:端口开放要到位 配置文件要仔细填 环境要引入全 数据库连接要整好
细节问题
settings设置里面,需要将加个“ * ”
在服务器和宝塔面板,要用的端口都给他开放了,不然是失败的一个因素。
跳转的网址不同了
原先在本地环境,只需要填后面的就可以跳转到另一个页面。
部署在服务器上后,原来的127.0.0.1变成了自己服务器的外网地址。所以要把转接的网页填全。
如果nginx站点创建了,但打开网址没有出现恭喜你,你的站点已经创建。那么可能是nginx的配置文件,目录项有问题。
使用vim编辑器编辑nginx配置文件。
cd /etc/nginxvim nginx.conf
将这一行改为在宝塔创建的站点文件的目录(含有html文件的)。