Django locale enabled app always returns 404 when debug is off -


i've been developing app uses i18n/locale url prefix in root/landing page. tried deploy application earlier testing purposes debug=true , working perfectly. if attempting access domain.com redirect domain.com/en/

now, since disabled debug=false, won't redirect /en/, instead show 404 error.

i saw question, close scenario

django 1.4 localemiddleware not working apache, works runserver

but, case, have 404 page setup , handlers , 404.html file.

below code

settings.py

language_code = 'en-us' admin_language_code = language_code  gettext = lambda s: s  languages = (     ('ar', gettext('arabic')),     ('en', gettext('english')), )  use_i18n = true  middleware_classes = (     'django.contrib.sessions.middleware.sessionmiddleware',     'django.middleware.locale.localemiddleware',     'django.middleware.common.commonmiddleware',     'django.middleware.csrf.csrfviewmiddleware',     'django.contrib.auth.middleware.authenticationmiddleware',     'django.contrib.messages.middleware.messagemiddleware',     'apps.accounts.middleware.accountsocialauthexceptionmiddleware',     'apps.core.middleware.defaultsitemiddleware',     #    'debug_toolbar.middleware.debugtoolbarmiddleware',     # uncomment next line simple clickjacking protection:     # 'django.middleware.clickjacking.xframeoptionsmiddleware', )  template_context_processors = (      "django.contrib.auth.context_processors.auth",     "django.core.context_processors.debug",     "django.core.context_processors.request",     "django.core.context_processors.i18n",     "django.core.context_processors.media",     "django.core.context_processors.static",     "django.core.context_processors.tz",     "django.contrib.messages.context_processors.messages",     # custom context processors     "snowflake.apps.core.context_processors.project_name",     "snowflake.apps.core.context_processors.sites",   ) 

and here urls

from django.conf import settings django.conf.urls import patterns, include, url django.conf.urls.i18n import i18n_patterns django.contrib.staticfiles.urls import staticfiles_urlpatterns   urlpatterns = patterns('',                        url(r'^admin/', include('apps.mod.urls')),                        url(r'^redirect/login/$', 'apps.core.views.redirect_to_accounts', name='login-redirect'), )  urlpatterns += i18n_patterns('',                               url(r'^$', 'apps.publication.views.index', name='home'),                               url(r'^publication(s)?/', include('apps.publication.urls')),                               url(r'^comment(s)?/', include('apps.comment.urls')),                               url(r'^rating(s)?/', include('apps.rating.urls')),                               url(r'^tag(s)?/', include('apps.taggable.urls')),                               url(r'^search/', include('apps.search.urls')),                               url(r'^guard(s)?/', include('apps.guard.urls')), )  handler404 = 'apps.core.views.handler404' 

p.s using django 1.5

your view apps.core.view.handler404 returns httpresponse object... http status code 200.

response = render_to_response("...") response.status_code = 404 return response 

should solve problem (have had before).


Comments

Popular posts from this blog

Change php variable from jquery value using ajax (same page) -

Pull out data related to my apps from Android Play Store and iOS App Store -

How can I fetch data from a web server in an android application? -