1.布署前需要關(guān)閉調(diào)試屈溉、允許任何機器訪問泼返,打開settings.py文件
DEBUG = False
ALLOWED_HOSTS = ['*',]
2.在本機進入虛擬環(huán)境,執(zhí)行命令導(dǎo)出當(dāng)前需要的所有包
pip freeze > plist.txt
3.通過ftp軟件FileZilla將項目代碼和plist.txt文件上傳到服務(wù)器(比如說你司買的阿里云)
4.創(chuàng)建虛擬環(huán)境,在虛擬環(huán)境上安裝包
mkvirtualenv 虛擬環(huán)境名稱
pip install -r plist.txt
5.安裝uWSGI
pip install uwsgi
6.配置uWSGI仑乌,在項目目錄下創(chuàng)建uwsgi.ini文件,配置如下
[uwsgi]
#使用nginx連接時使用
socket=127.0.0.1:8899
#直接做web服務(wù)器使用
#http=127.0.0.1:8899
#項目目錄
chdir=/Users/Desktop/PycharmProjects/Django/項目名稱
#項目中wsgi.py文件的目錄叶撒,相對于項目目錄
wsgi-file=項目名稱/wsgi.py
processes=4
threads=2
master=True
pidfile=uwsgi.pid
daemonize=uwsgi.log
7.啟動uWSGI /停止
uwsgi --ini uwsgi.ini
uwsgi --stop uwsgi.pid
#當(dāng)然你可以看下進程有木有
ps ajx|grep uwsgi
8.Nginx-轉(zhuǎn)向uwsgi
安裝移步到:Nginx Mac 安裝
9.找到Nginx路徑绝骚,配置nginx.conf文件
/usr/local/etc/nginx/nginx.conf
10.nginx.conf文件的server節(jié)點下添加新的location項,指向uwsgi的ip與端口
location / {
#將所有的參數(shù)轉(zhuǎn)到uwsgi下
include uwsgi_params;
#uwsgi的ip與端口
uwsgi_pass 127.0.0.1:8899;
}
具體修改如圖:
11.png
11.在server節(jié)點下添加新的location項祠够,用于處理靜態(tài)文件压汪,如上圖
location /static {
alias /var/www/dailyfresh/static/;
}
12.在服務(wù)器上創(chuàng)建如下目錄(我這里本機作為服務(wù)器)
sudo mkdir -vp /var/www/dailyfresh/static/
修改目錄權(quán)限
sudo chmod 777 /var/www/dailyfresh/static/
22.png
13.修改settings.py文件
STATIC_ROOT='/var/www/dailyfresh/static/'
14.收集所有靜態(tài)文件到static_root指定目錄
python manage.py collectstatic
15.開啟器nginx 開啟uwsgi
nginx
uwsgi --ini uwsgi.ini