2010-05-29 109 views
2

我有一個django應用程序,主要是完成的,並且當我使用manage.py runserver命令運行它時,URL完美地工作。不過,我最近試圖讓它通過lighttpd運行,許多鏈接已停止工作。Django的URL配置返回不正確的「當前的URL」

例如:http://mysite.com/races/32應該可以工作,但會拋出此錯誤消息。

Page not found (404) 
Request Method: GET 
Request URL: http://mysite.com/races/32 
Using the URLconf defined in racetrack.urls, Django tried these URL patterns, in this order: 
^admin/ 
^create/$ 
^races/$ 
^races/(?P<race_id>\d+)/$ 
^races/(?P<race_id>\d+)/manage/$ 
^races/(?P<text>\w+)/$ 
^user/(?P<kol_id>\d+)/$ 
^$ 
^login/$ 
^logout/$ 
The current URL, 32, didn't match any of these. 

請求URL是準確的,但在最後一行(其顯示當前URL)是給予32代替種族/ 32如預期。

這裏是我的URL配置:

from django.conf.urls.defaults import * 

from django.contrib import admin 
admin.autodiscover() 

urlpatterns = patterns('racetrack.races.views', 
    (r'^admin/', include(admin.site.urls)), 
    (r'^create/$', 'create'), 
    (r'^races/$', 'index'), 
    (r'^races/(?P<race_id>\d+)/$', 'detail'), 
    (r'^races/(?P<race_id>\d+)/manage/$', 'manage'), 
    (r'^races/(?P<text>\w+)/$', 'index'), 
    (r'^user/(?P<kol_id>\d+)/$', 'user'), 
    # temporary for index page replace with welcome page 
    (r'^$', 'index'), 
) 

urlpatterns += patterns('django.contrib.auth.views', 
    (r'^login/$', 'login', {'template_name': 'races/login.html'}), 
    (r'^logout/$', 'logout', {'next_page': '/'}), 
) 

謝謝。

回答

2

我會認爲問題在於lighttpd的配置。

Django能夠將「請求網址」「翻譯」爲「當前網址」進行網址檢查,例如通過mod_pythondjango.root配置。

+0

我應該包含哪些lighttpd配置文件以幫助查明問題?我從來沒有在這方面做過工作,但我確實可以訪問它。 – 2010-05-29 21:31:33