我想部署一個Django應用程序的第一次使用mod_wsgi
與Apache
在Ubuntu 12.04
虛擬機。我一直在以下幾個教程,特別是Ayman Farhat blog,這excellent YouTube video當然官方的Django文檔Django應用程序不可見
在此之前的earlier question I posted here不知道爲什麼,當我上傳到/ var/WWW /(臉紅了我的Django的調查並沒有簡單地工作! )我已經根據答案查看了mod_wsgi
。
我不知道我失蹤了什麼階段。該項目可以通過python manage.py runserver
在服務器上啓動,沒有任何錯誤。我也跑了python manage.py collectstatic
沒有錯誤。
然後,我
sudo service apache2 restart
但是重新啓動Apache,當我去的URL http://phaedrus.scss.tcd.ie/bias_experiment/surveythree/,我希望看到調查無所不有。我只看到標準的404錯誤。
我真的不確定接下來要做什麼或者爲什麼這不起作用。
下面是我的設置和我迄今爲止所嘗試的。
注意:我有一個在Pydev中創建的Bias_Experiment Django項目。它有三個應用程序包含在src
文件夾中。
- 調查(我的工作的項目)
- 民意調查(一個教程中,我被下)
- bias_experiment(我設置的根應用程序文件等)
我的項目結構
我的虛擬主機位於/etc/apache2/sites-available/bias_experiment
<VirtualHost *:80>
ServerAdmin [email protected]
ServerName kdeg-vm-18.scss.tcd.ie
ServerAlias http://collegeserver.ie/bias_experiment
WSGIScriptAlias/var/www/bias_experiment/src/bias_experiment/index.wsgi
Alias /static/ /var/www/bias_experiment/src/bias_experiment/static/
<Location "/static/">
Options -Indexes
</Location >
</VirtualHost >
我WSGI文件位於/var/www/bias_experiment/src/bias_experiment/index.wsgi
import os
import sys
import site
# Add the site-packages of the chosen virtualenv to work with
site.addsitedir('~/var/www/bias_experiment/lib/python2.7/site-packages')
# Add the app's directory to the PYTHONPATH
sys.path.append('/var/www/bias_experiment')
sys.path.append('/var/www/bias_experiment/src/bias_experiment')
os.environ['DJANGO_SETTINGS_MODULE'] = 'bias_experiment/src/bias_experiment.settings'
# Activate your virtual env
activate_env=os.path.expanduser("~/var/www/bias_experiment/bin/activate_this.py")
execfile(activate_env, dict(__file__=activate_env))
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()
我的URL模式從bias_experiment/src/bias_experiment/urls.py
urlpatterns = patterns('',
url(r'^polls/', include('polls.urls', namespace="polls")),
url(r'^admin/', include(admin.site.urls)),
url(r'^surveythree/$', SurveyWizard.as_view([SurveyForm1, SurveyForm2, SurveyForm3, SurveyForm4, SurveyForm5])),
)
感謝您的幫助;-)我不知道我應該訪問的地址應該匹配服務器名稱或別名,我會嘗試一些變化後,我做了其他更改。 – Deepend
我已根據您的指示更新了ServerAlias和WSGIScriptAlias。我的代碼在'/ var/www /'not'〜/ var/www /我也改變了這個。我也做了其他改變。 – Deepend
由於這些變化,我仍然沒有看到預期的結果。我正在通過http://phaedrus.scss.tcd.ie/bias_experiment公開的私有虛擬機託管。我認爲這種困惑是問題的根源。我認爲現在最好能夠發佈另一個問題,重點關注這些問題已經解決了嗎? – Deepend