我以爲同樣的機制可以用於開發服務器和Apache作爲我的Web服務器,但我目前真的很困惑。django應用程序在開發服務器上工作,但我得到404上的Apache
我可以同時使用Django開發服務器訪問的URL如下
__http://devserver/my_application/
當我轉我的Web服務器Apache的,我得到的Django 404錯誤的所有URLs.py條目。
試圖訪問__http:// devserver /返回以下
Using the URLconf defined in antrum.urls, Django tried these URL patterns, in this order:
^my_application/$
^my_application/?page=(?P<page>\d+)
^my_application/new
^my_application/(?P<candidate_id>\d+)/$
^my_application/(?P<candidate_id>\d+)/update/$
^my_application/(?P<candidate_id>\d+)/delete/$
^my_application/search/$
^admin/doc/
^admin/
The current URL, , didn't match any of these.
嘗試訪問http://devserver/my_application/結果如下輸出
{'path': u'my_application/'}
我可能做一個蹩腳的錯誤,但不能得到現在看到。我可能缺少什麼來檢查?
這裏是我的Apache配置
<Location "/">
SetHandler python-program
PythonHandler django.core.handlers.modpython
SetEnv DJANGO_SETTINGS_MODULE project.settings
PythonOption django.root/
PythonDebug On
PythonPath "['/home/user/','/home/user/project/'] + sys.path"
</Location>
<Location "/media/">
SetHandler None
</Location>
這裏是我的發現:
- 切換到manage.py的runserver解決我的問題
- Apache的error.log中沒有入口
- 當我爲pythonpath設置環境變量並使用python CLI,我可以訪問我的模型,這也是恕我直言,離開python路徑選項關閉此
- __http:// devserver/my_application之和__http:// devserver/my_appTYPO給出了不同的相同的錯誤消息{u'path「:...}輸出
Apache日誌中有什麼? – 2011-01-07 04:24:52
error.log似乎乾淨>> [Thu Jan 06 19:48:52 2011] [notice] mod_python:using mutex_directory/tmp [Thu Jan 06 19:48:52 2011] [notice] Apache/2.2.16(Ubuntu )mod_python/3.3.1 Python/2.6.6配置 - 恢復正常操作 – 2011-01-07 04:26:42
access.log似乎也很乾淨,我看到我的GET請求 – 2011-01-07 04:27:29