許多共享主機的服務提供商不允許執行你自己的服務程序,也不允許修改 httpd.conf 檔案。 儘管如此,仍然有可能通過web伺服器產生的子程序來執行django。
程式設計客棧記錄
如果你要使用伺服器的子程序,你沒有必要自己去啟動fastcgi伺服器。 apache會自動產生一些子程序,產生的數量按照需求和配置會有所不同。
在你的web根目錄下,將下面的內容增加到 .htaccess 檔案中:
addhandler fastcgi-script .fcgi
rewriteengine o
rewritecond % !-f
rewriterwww.cppcns.comule ^(.*)$ mysite.fcgi/$1 [qsa,l]
接著,建立乙個指令碼,告知apache如何執行你的fastcgi程式。 建立乙個 mysite.fcgi 檔案,並把它放在你的web目錄中,開啟可執行許可權。
#!/usr/bin/python
import sys, os
# add a custom python path.
sys.path.insert(0, "/home/user/python")
# switc to the directory of your project. (optional.)
# os.chdir("/home/user/myproject")
# set the django_settings_module environment variable.
os.environ['django_settings_module'] = "myproject.settings"
from django.core.servers.fastcgi程式設計客棧 import runfastcgi
runfastcgi(method="threaded", daemonize="false")
重啟新產生的程序伺服器
如果你改變了站點上任何的python**,你需要告知fastcgi。 但是,這不需要重啟apache,而只需要重新上傳 mysite.fcgi 或者編輯改檔案,使得修改時間發生了變化,它會自動幫你重啟django應用。 你可以重新上傳mysite.fcgi或者編輯這個檔案以改變該檔案的時間戳。 當阿帕奇伺服器發現文件被更新了,它將會為你重啟你的django應用。
如果你擁有unix系統命令行的可執行許可權,只需要簡單地使用 touch 命令:
touch mysite.fcgi
本文標題: 在主機商的共享伺服器上部署django站點的方法
本文位址:
在伺服器上部署Git
發現乙個git學習資料 講的比較詳細,分享一 下。開始架設 git 伺服器前,需要先把現有倉庫匯出為裸倉庫 即乙個不包含當前工作目錄的倉庫。做法直截了當,轉殖時用 bare選項即可。裸倉庫的目錄名一般以.git結尾,像這樣 git clone bare my project my project.g...
在伺服器上部署web專案。
一 發布 登陸密碼 公司上網密碼去掉 進入到部署路徑下,專案的跟目錄 root www yq scm cd usr local projects yqxt modules yq scm 更新 到伺服器 root www yq scm svn update 報有檔案衝突,刪掉衝突的檔案,再更新。roo...
在ubuntu上部署安裝ftp伺服器
ftp 是file transfer protocol 檔案傳輸協議 的英文簡稱,而中文簡稱為 文字傳輸協議 用於internet上的控制檔案的雙向傳輸。1.安裝vsftpd伺服器 sudo apt get install vsftpd 2.配置vsftpd.conf檔案 sudo vi etc v...