虛擬主機稱為 Shared Web Hosting,
又稱為共享主機,
顧名思義,
其實就是將實體電腦中的資源分割成許多份,
讓多人一起共用在實體電腦上的資源,
共享主機最顯著的缺點除了資源為共享的以外,
在控制權上也有著諸多限制,
不過這不再今天的探討範圍,
今天要來教大家:
在虛擬主機 cPanel 上部署 Django 專案
雖然虛擬主機有諸多限制,隨著技術的進步,
過去共享主機上沒有的功能也逐步開放出來,
首先在 cPanel 找到 Setup Python App 點選進入,
新增一個 Application ,
設定好 Application root ( 實體路徑 ) 與 Application URL
( URL 可先設定好子域名就可從下拉式選單選擇 )
此時登入設定好的 Application URL 應該可看到提示成功的內容。
基本上 cPanel 部分的設定就到此而已,
接著就需要以 SSH 登入伺服器,
透過 SSH 登入伺服器後,
當然是馬上開啟虛擬環境了,
通常會在新建 Python Application 時候,
系統會將命令秀在最上方,
接著從 cPanel 的檔案管理員找到 passenger_wsgi.py 檔案,
( 此檔案會在 Application root 資料夾中 )
將 application 內容改為 Django 專案名稱,
( 預設為提示成功的畫面 )
此處為 cms 故改為如底下範例。
其餘就是依照 Django 部署的方式將專案上傳到 Application root 中,
重點不外乎就是透過 pip install 將必要元件加入虛擬環境中,
設定好專案的 wsgi.py 檔案還有設定 ALLOW HOST 等等,
詳細步驟可參照之前提到的文章。
底下為 wsgi.py 設定範例 ( 範例專案名稱為 cms ):
import os import sys from os.path import join,dirname,abspath PROJECT_DIR = dirname(dirname(abspath(__file__))) sys.path.insert(0, PROJECT_DIR) sys.path.insert(0, '/此處填寫虛擬環境的路徑/3.7/lib/python3.7/site-packages/') from django.core.wsgi import get_wsgi_application os.environ['DJANGO_SETTINGS_MODULE'] = 'cms.settings' application = get_wsgi_application()
沒有留言:
張貼留言