1 基本软件安装 python3编译安装 django 用pip3安装 uwsgi 用pip3安装 nginx 用yum安装 2 编辑uwsgi,在项目的主目录下 即: cd /home/mysite/mysite,touch一个uwsgi.ini的文件,然后编辑内容如下:
cd /home/mysite/mysite
[uwsgi]
#http=127.0.0.1:8000
socket=127.0.0.1:8000
chdir=/home/mysite
wsgi-file=mysite/wsgi.py
process=4
threads=2
pidfile=uwsgi.pid
daemonize=uwsgi.log
master=True
#/usr/local/lib64/python3.6/site-packages
#/usr/local/lib/python3.6/site-packages
还需要配套新建两个文件
touch uwsgi.pid
touch uwsgi.log
3 测试uwsgi
cd /home/mysite/mysite
uwsgi --ini uwsgi.ini
#ps aux | grep uwsgi 出现3个进程就表示启动没问题
关闭uwsgi做法:
uwsgi --stop uwsgi.ini
#如果上面的方法无法关闭,采用如下命令实现:
pkill -f uwsgi -9
ps:如果安装完uwsgi后,无法再ssh全局无法敲uwsgi,提示无法找到命令,需要先找到uwsgi所在位置,命令如下:
which uwsgi
[root@aaa]# find / -name uwsgi
/usr/local/python3/bin/uwsgi
[root@aaa]# /usr/local/python3/bin/uwsgi ##测试uwsgi是否可用,如果出来一堆内容,表示没问题
然后需要再建立一个软链接,以便以后直接操作uwsgi
ln -s /usr/local/python3/bin/uwsgi /usr/bin/uwsgi
然后就可用测试uwsgi --ini uwsgi.ini
4 配置nginx
cd /etc/nginx/conf.d
touch django.conf
vim /etc/nginx/config.d/django.conf
server {
listen 80;
server_name __;
charset utf-8;
access_log /var/log/nginx/django_access.log;
error_log /var/log/nginx/django_error.log;
location = /favicon.ico { access_log off; log_not_found off; }
client_max_body_size 20M;
location / {
include /etc/nginx/uwsgi_params;
uwsgi_pass 127.0.0.1:8000; #要跟uwsgi里面的socket保持一致
# uwsgi_read_timeout 30s;
# uwsgi_send_timeout 30s;
}
}
5 启动与重启
cd /home/mysite/mysite
uwsgi --ini uwsgi.ini
systemctl start nginx
systemctl restart nginx
systemctl enable nginx ##设置开机启动
6 处理静态文件 先建立一个静态文件夹,例如:
cd /home/mysite
mkdir static
然后修改setting.py文件,在末尾添加如下内容:
STATIC_ROOT='/home/mysite/static'
然后执行如下命令,将静态文件都收集起来(以后每次有静态文件的变更,都需要执行如下命令,以保证Nginx能够及时拿到所有静态文件),放入到如上文件夹
python3 manage.py collectstatic --noinput
最后配置nginx 寻找静态文件的位置:在nginx的config文件中添加如下内容
location /static {
alias /home/mysite/static;
}
然后重启nginx,收工。
















