1安裝 uwsgicss
pip install uwsgipython
2.在項目目錄下新建uwsgi.ini文件 而且配置nginx
chdir 是項目的根路徑django
wsgi-file 項目目錄下的wsgi.py文件 相對根目錄ubuntu
3.在安裝好uwsgi的虛擬環境或非虛擬環境下啓動uwsgi :(我在虛擬環境裏安的 沒進虛擬環境就啓動 找不到命令 哈哈)瀏覽器
啓動:uwsgi --ini uwsgi.ini網站
中止:uwsgi --stop uwsgi.pidui
重啓:uwsgi --reload uwsgi.pidurl
使用http協議查看網站運行狀況,運行正常,可是靜態文件沒法加載spa
安裝nginx sudo apt-get install nginx
默認安裝到/usr/local/nginx目錄,進入此目錄執行命令
查看版本:sudo sbin/nginx -v
啓動:sudo sbin/nginx
中止:sudo sbin/nginx -s stop
重啓:sudo sbin/nginx -s reload
經過瀏覽器查看nginx運行結果
指向uwsgi項目:編輯conf/nginx.conf文件
默認監聽端口是80 在/etc/nginx/sites-enabled 下default下能夠修改默認端口 先不作修改
nginx默認會讀取/etc/nginx/sites-enabled/default
文件中的配置,修改其配置以下:
經過nginx訪問須要在uwsgi中用soket訪問修改 uwsgi.ini文件 注意 uwsgi_pass 的地址與 uwsgi.ini文件中的地址一致
啓動 uwsgi uwsgi --ini uwsgi.ini
重啓 nginx
啓動 sudo nginx
中止:sudo nginx -s stop
重啓:sudo nginx -s reload
在瀏覽器中輸入 127.0.0.1:80 經過nginx訪問
配置 靜態文件目錄
location /static {
alias /home/ubuntu/blog/static; # your Django project's static files - amend as required
}
# Django media
location /media {
alias /home/ubuntu/blog/media; # your Django project's media files - amend as required
}
把Django自帶的靜態文件收集到同一個static中,否則訪問Django的admin頁面會找不到靜態文件。在django的setting文件中,添加下面一行內容:
STATIC_ROOT = os.path.join(BASE_DIR, "本身的靜態文件目錄")在django主目錄的urls裏配置在項目urls裏配置static路徑
from django.views.static import servefrom blog.settings import MEDIA_ROOT, STATIC_ROOT
也能夠新建存放靜態文件目錄 進行配置 給目錄添加權限 sudo chmod 777 ‘新建的目錄’
保證和nginx配置的目錄相同便可
而後到項目目錄下執行:
python manage.py collectstatic # 採集靜態文件到存放目錄 nginx會自動加載此目錄的靜態文件並返回
修改配置文件
DEBUG = False
ALLOWED_HOSTS = ['*']