上一篇 升級 Nginx + 安裝 uWSGI + Python VirtualEnv + Bottle
使用到了 uWSGI,不過由於種種的理由.同一部主機可能不止一個站點.
所以總不能夠為每個站點都獨立出 uWSGI 守護進程.所以記錄一下共用方式
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
| # 啟動 uWSGI (需要加上 -vhost) /usr/local/uwsgi/uwsgi --gid=[執行組] --uid=[執行用戶] -s :8888 -H /home/[用戶]/venv/[專案] --vhost
# 之後便是配置一個 VirtualEnv 和安裝所需要的模組/套件 /usr/local/bin/virtualenv --no-site-package /home/[用戶]/venv/[專案名] cd /home/[用戶]/venv/[專案名] source bin/activate.csh
pip install bottle pip install make ....
# 接著就是設定 Nginx 了.這裡每個站點都必須為一個 Server Node server { listen 80; charset utf-8; root /home/[用戶]/[專案1]; server_name domain1.me www.domain1.me; location / { include uwsgi_params; uwsgi_param UWSGI_PYHOME /home/[用戶]/[專案1]; uwsgi_param UWSGI_CHDIR /home/[用戶]/[專案1]; uwsgi_param UWSGI_SCRIPT index; # 專案的 WSGI 入口檔案 (如 index.py, 但省略 .py 結尾) uwsgi_pass 127.0.0.1:8888; # 對應的 WSGI 程式位置 } }
server { listen 80; charset utf-8; root /home/[用戶]/[專案2]; server_name domain2.me www.domain2.me; location / { include uwsgi_params; uwsgi_param UWSGI_PYHOME /home/[用戶]/[專案2]; uwsgi_param UWSGI_CHDIR /home/[用戶]/[專案2]; uwsgi_param UWSGI_SCRIPT index; # 專案的 WSGI 入口檔案 (如 index.py, 但省略 .py 結尾) uwsgi_pass 127.0.0.1:8888; # 對應的 WSGI 程式位置 } }
|