我有我的Django項目這個奇怪的問題。我現在使用Django與Apache & mod_wsgi,試圖使其在生產模式下工作,但重定向url似乎不起作用。我只能訪問網站索引頁面,但不能訪問任何子網址。即如果我去site-url.com/quzapp/它顯示索引頁面,這是完全一樣,如果我去site-url.com/Django與mod_wsgi&apache不正確的重定向(無錯誤)
當我在開發服務器上運行它,一切正常正好。我總是定向到期望的頁面。有線的事情是沒有錯誤記錄,即使我已經將日誌設置爲apache配置中的調試級別。
當我檢查的訪問日誌它表明這樣的:
"GET /quzapp/ HTTP/1.1" 200 1935 (the quzapp page)
"GET/HTTP/1.1" 200 1935 (the site index)
日誌看起來不錯,但我看不到比site_index.html其他任何網頁...什麼可能是錯誤的?
這裏是網站的簡要結構: 該項目名爲mysite,主要設置文件位於一個子目錄中,同時調用mysite。 quzapp是一個Django應用程序。
mysite/
db.sqlite3
manage.py
mysite/
settings.py
urls.py
views.py
wsgi.py
quzapp/
__init__.py
urls.py
views.py
admin.py
forms.py
models.py
templates/
quzapp/
base.html
…...
template/
siteindex.html
…..
static/…
media/….
的主要部分的mysite/mysite的/ urls.py:
urlpatterns = patterns('',
url(r'^', views.index, name='index'),
url(r'^quzapp/',include('quzapp.urls')),
url(r'^admin/', include(admin.site.urls)),
)
的mysite的/ quzapp/urls.py的主要部分:
urlpatterns = patterns('',
url(r'^$', views.initial_form, name='index'),
url(r'^allimage/$', views.allimage, name='allimage'),
url(r'^admin/doc/', include('django.contrib.admindocs.urls')),
url(r'^admin/', include(admin.site.urls)),
url(r'^readytostart/$','questionnaires.views.register_success'),
url(r'^audio/$', views.audio, name='audio'),
url(r'^text/$', views.text, name='text'),
url(r'^end/$', views.endpage, name='endpage'),
) + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
urlpatterns += staticfiles_urlpatterns()
我打印出一些文本以查看是否訪問了所有的urls.py文件並且答案是肯定的。打印命令會在error_log中留下文本消息,該消息顯示首先訪問mysite/mysite/urls.py,然後訪問mysite/quzapp/urls.py。
在mysite/mysite/views.py中,它返回render_to_response('siteindex.html')。我想這是我如何訪問siteindex頁面。其他頁面呈現在mysite/quzapp/views.py中。我再次打印出一些文本消息,並在錯誤日誌中顯示mysite/quzapp/views.py文件在訪問mysite/mysite/views.py後訪問。
我想不出什麼問題,並且沒有記錄錯誤,在訪問日誌中狀態碼總是200(好)。有沒有人有關於這個問題的線索?
非常感謝您的幫助!
設置您的索引網址結尾爲「$」:url(r'^ $',views.index,name ='index') – 2014-10-01 08:42:02
謝謝!你是對的。這解決了我的問題:) – Peine 2014-10-01 08:49:52