记录一下小学期的一个项目部署经历,折磨自己了两天才算是有了一定的进展。QAQ
我用的python3.8.1,django3.6,另外由于ubantu自带了python2.7和3.5,因此在使用pip时,可以考虑使用pip3.8 install 命令,否则很大概率出现版本问题。
先把uwsigi.ini文件和nginx.conf文件如何配置放在这里。我这几天遇到的主要问题存在于这两个文件里。其余的之后补充,论坛其他大佬的文章对其他部分讲解比较清楚。
nginx.conf文件:
events {
worker_connections 768;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
server {
listen 80;
server_name 120.79.121.21; #改为自己的域名,没域名修改为127.0.0.1:80
charset utf-8;
location / {
include uwsgi_params;
uwsgi_pass 127.0.0.1:8000; #端口要和uwsgi里配置的一样,我出现504错误是由于这里配置的问题
uwsgi_param UWSGI_SCRIPT DjangoBlog.wsgi; #wsgi.py所在的目录名+.wsgi
uwsgi_param UWSGI_CHDIR /home/lylinux-DjangoBlog-master/DjangoBlog; #项目路径
}
location /static/ {
alias /home/lylinux-DjangoBlog-master/DjangoBlog/collectedstatic/; #静态资源路径
}
}
}
uwsgi.ini
这个文件是自己创建在与manage.py同目录下的。
[uwsgi]
socket = 127.0.0.1:8000
chdir = /home/lylinux-DjangoBlog-master/DjangoBlog #这里是项目根目录
module = DjangoBlog.wsgi #这里是wsgi.py所在的目录
master = true
processes = 4
vacuum = true
配置好这两个文件后,需要先python manage.py runserver 8005打开django项目(不建议使用8000,因为容易出现端口占用问题)。
然后要nginx命令运行nginx,然后在uwsgi.ini所在目录运行uwsgi --ini uwsgi.