centos7下的django项目上线和部署
1.在服务器上安装虚拟环境和uwsgi
2.在服务器上安装nginx
3.将项目文件拷到服务器/data/www/文件夹下(没有自己建)
4.配置在项目文件里配置uwsgi文件 ( uconfig.ini文件)
[uwsgi]
socket = 127.0.0.1:8000
chdir = /data/www/django #项目根目录
wsgi-file = django/wsgi.py #与项目同名的目录名+wsgi.py
master = true
processes = 1
threads = 2
wq! 保存退出
5.在nginx中配置
在/nginx/conf/文件下建一个文件夹 vhost
mkdir vhost
然后进入到文件夹建一个以 .conf 结尾的配置文件加入一下内容(有几个项目就建几个文件)
server {
listen 80; 服务器的端口
server_name www.mydjango.com; #有域名填域名 没域名填服务器地址
charset utf-8;
location / {
include uwsgi_params;
uwsgi_pass 127.0.0.1:8000; #这里要与前面的uwsgi上的端口地址一致
uwsgi_param UWSGI_SCRIPT django.wsgi; #与项目同名的目录名+wsgi.py
uwsgi_param UWSGI_CHDIR /data/www/django/; #项目的地址
}
location /static/ {
alias /data/www/django/static/; #项目静态资源的地址
}
}
wq! 退出保存!
然后将/nginx/conf/文件下的自带的nginx.conf拷贝备份一下
cp nginx.conf nginx.conf.bak
然后vim nginx.conf 将原有的内容清空加入一下内容(目的:将配置的vhost下的文件包含进来)
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
include /usr/local/nginx/conf/vhost/djangoblog.conf;
include /usr/local/nginx/conf/vhost/django_prectice01.conf; #这里是配置包含nginx的子文件的地方 有几个项目就加几个“include ******** ”路径
server {
listen 80 default_server;
server_name _;
return 404;
}
}
wq! 保存退出!
然后 进入到nginx目录下的sbin
./nginx -s reload
重启nginx服务器 (如果报错就是nginx文件配置有问题)
进入到项目目录里启动uwsgi
uwsgi uconfig.ini
如果不报任何错误 打开网站看一下
上线成功!