整理來源:https://www.django.cn/article/show-4.htmlhtml
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && bash install.sh
yum update -y
yum -y groupinstall "Development tools" yum install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel psmisc
cd /usr/local
wget https://www.python.org/ftp/python/3.6.6/Python-3.6.6.tgz
解壓python
tar -zxvf Python-3.6.6.tgz
進入 Python-3.6.6路徑linux
cd Python-3.6.6
編譯安裝到指定路徑nginx
./configure --prefix=/usr/local/python3
注意:/usr/local/python3 路徑能夠本身指定,本身記着就行,下邊要用到。web
安裝python3sql
make make install
安裝完成以後 創建軟連接 添加變量 方便在終端中直接使用python3數據庫
ln -s /usr/local/python3/bin/python3.6 /usr/bin/python3
Python3安裝完成以後pip3也一塊安裝完成,不須要再單獨安裝
一樣給pip3創建軟連接django
ln -s /usr/local/python3/bin/pip3.6 /usr/bin/pip3
python3 pip3 -v
pip3 install virtualenv
創建軟連接bash
ln -s /usr/local/python3/bin/virtualenv /usr/bin/virtualenv
安裝成功在根目錄下創建兩個文件夾,主要用於存放env和網站文件的。(我的習慣,其它人可根據本身的實際狀況處理)服務器
mkdir -p /data/env mkdir -p /data/wwwroot
/data/env/ virtualenv --python=/usr/bin/python3 pyweb
而後進入/data/env/pyweb/bin
啓動虛擬環境:
cd /data/env/pyweb/bin source activate
右下角出現(pyweb),說明是成功進入虛擬環境。
pip3 install django==1.11.11 (指定安裝和你項目相同的版本) pip3 install uwsgi
留意:uwsgi要安裝兩次,先在系統裏安裝一次,而後進入對應的虛擬環境安裝一次。
給uwsgi創建軟連接,方便使用
ln -s /usr/local/python3/bin/uwsgi /usr/bin/uwsgi
一、修改Django配置settings文件中ALLOWED_HOSTS,['*'],可讓任何IP訪問
一、在項目目錄下用下面的命令把當前的環境依賴包導出到requirements.txt文件
pip freeze > requirements.txt
二、把項目源碼壓縮打包。上傳到服務器對應的目錄裏,解壓。
三、進入虛擬環境
cd /data/env/pyweb/bin source activate
四、進入項目路徑安裝requirements.txt裏的依賴包。
pip3 install -r requirements.txt
五、經過python3 manage.py runserver 運行一下項目,若是能正常啓動則進行下一步,不能正常運行往上檢查。
咱們網站項目路徑是 /data/wwwroot/mysite/,在項目根目錄下建立
mysite.xml文件,輸入以下內容:
<uwsgi> <socket>127.0.0.1:8997</socket> <!-- 內部端口,自定義 --> <chdir>/data/wwwroot/mysite/</chdir> <!-- 項目路徑 --> <module>mysite.wsgi</module> <!-- mysite爲wsgi.py所在目錄名--> <processes>4</processes> <!-- 進程數 --> <daemonize>uwsgi.log</daemonize> <!-- 日誌文件 --> </uwsgi>
保存
注意
進入home目錄,執行下面命令
cd /home/
wget http://nginx.org/download/nginx-1.13.7.tar.gz
下載完成後,執行解壓命令:
tar -zxvf nginx-1.13.7.tar.gz
進入解壓後的nginx-1.13.7文件夾,依次執行如下命令:
./configure make make install
nginx通常默認安裝好的路徑爲/usr/local/nginx
在/usr/local/nginx/conf/中先備份一下nginx.conf文件,以防意外。
cp nginx.conf nginx.conf.bak
而後打開nginx.conf,把原來的內容刪除,直接加入如下內容:
events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; sendfile on; server { listen 80; server_name www.django.cn; #改成本身的域名,沒域名修改成127.0.0.1:80 charset utf-8; location / { include uwsgi_params; uwsgi_pass 127.0.0.1:8997; #端口要和uwsgi裏配置的同樣 uwsgi_param UWSGI_SCRIPT mysite.wsgi; #wsgi.py所在的目錄名+.wsgi uwsgi_param UWSGI_CHDIR /data/wwwroot/mysite/; #項目路徑 } location /static/ { alias /data/wwwroot/mysite/static/; #靜態資源路徑 } } }
要留意備註的地方,要和UWSGI配置文件mysite.xml,還有項目路徑對應上。
進入/usr/local/nginx/sbin/目錄
執行./nginx -t命令先檢查配置文件是否有錯,沒有錯就執行如下命令:
./nginx
終端沒有任何提示就證實nginx啓動成功。可使用你的服務器地址查看,成功以後就會看到一個nginx歡迎頁面。
以後,在settings.py裏設置:
一、關閉DEBUG模式。
DEBUG = False
二、ALLOWED_HOSTS設置爲* 表示任何IP均可以訪問網站。
ALLOWED_HOSTS = ['*']
每次項目啓動方式
cd /data/env/pyweb/bin 進入虛擬環境 source activate 啓動虛擬環境 啓動nginx cd /usr/local/nginx/sbin/ ./nginx 啓動 ( mysite 爲你本身的項目名 ) cd /data/wwwroot/mysite uwsgi -x mysite.xml 啓動項目(建議使用下面的後臺執行,80爲項目端口) python3 manage.py runserver 0.0.0.0:80 在後臺執行 (執行完之後須要用’exit‘正常退出Linux系統): nohup python manage.py runserver 0.0.0.0:80 2>log & ps -aux 查詢全部後臺程序 kill DIP # 結束後臺
成功訪問!
裏面最值得留意的就是項目的路徑不要弄錯,還有,項目的全部操做都要在虛擬環境下進行。
環境部署部份,懶的話,直接複製個人代碼直接部署就行。