uWSGI+Django (上)
阿新 • • 發佈:2017-07-07
pen oot support imp span with uil 內容 動態
環境是ubuntu 14.0 python3 django 1.10
1:安裝uwsgi
sudo apt-get install libpcre3 libpcre3-dev
sudo pip3 install uwsgi
順序必須要這樣並且必須要以root的身份不然報錯 !!! no internal routing support, rebuild with pcre support !!!
安裝完之後
1:測試uwsgi
新建test.py 如下st.py
def application(env, start_response):
start_response(‘200 OK‘, [(‘Content-Type‘,‘text/html‘)])
return [b"Hello World"]
uwsgi --http :8001 --wsgi-file test.py(這句命令要和test.py在同一位置,如果不在該會報錯:failed to open python file test.pyunable to load app 0 (mountpoint=‘‘) (callable not found or import error)*** no app loaded. going in full dynamic mode *** )
打開瀏覽器輸入 127.0.0.1:8000 會顯示Hello World
OK無誤
2:測試uwsgi+django
首先確保django無誤。然後
uwsgi --http :8000 --module name.wsgi name為你wsgi所在文件夾的名字 (同理wsgi文件要和命令在同一位置)
然後在瀏覽器裏訪問django
解釋一下:
WSGI: WSGI是一種Web服務器網關接口。它是一個Web服務器(如nginx)與應用服務器(如uWSGI服務器)通信的一種規範。
uWSGI: uWSGI是一個Web服務器,它實現了WSGI協議、uwsgi、http等協議。 Nginx中HttpUwsgiModule的作用是與uWSGI服務器進行交換。
uwsgi: uwsgi同WSGI一樣是一種通信協議,而uWSGI是實現了uWSGI和WSGI兩種協議的Web服務器。
有了uWSGI為什麽還需要nginx?
nginx具備優秀的靜態內容處理能力,然後將動態內容轉發給uWSGI服務器,這樣可以達到很好的客戶端響應。
(以上內容均為網上所看+本人實際操作)
uWSGI+Django (上)