#32005: Allow disabling of auto-404-redirection in LocaleMiddleware
-------------------------------------+-------------------------------------
     Reporter:  Alex Vandiver        |                    Owner:  nobody
         Type:  New feature          |                   Status:  new
    Component:                       |                  Version:  3.1
  Internationalization               |
     Severity:  Normal               |               Resolution:
     Keywords:                       |             Triage Stage:
                                     |  Unreviewed
    Has patch:  0                    |      Needs documentation:  0
  Needs tests:  0                    |  Patch needs improvement:  0
Easy pickings:  0                    |                    UI/UX:  0
-------------------------------------+-------------------------------------
Changes (by Carlton Gibson):

 * type:  Uncategorized => New feature


Old description:

> This is related to the last two comments on #17734.  Specifically, if an
> application decides to return an explicit 404, there is no way to prevent
> the LocaleMiddleware from overriding this and trying the language
> redirect.
>
> In those comments, it was about catch-all URL patterns.  I'm running into
> something related, but slightly different -- we [serve 404's for the `/`
> endpoint if the subdomain isn't
> valid](https://github.com/zulip/zulip/blob/master/zerver/middleware.py#L434),
> which the LocaleMiddleware unhelpfully redirects to (e.g.) `/en/` which
> isn't any less of a 404.
>
> Would folks be amenable to a patch which disabled the auto-404-redirect
> functionality in the middleware with a flag of some sort?

New description:

 This is related to the last two comments on #17734.  Specifically, if an
 application decides to return an explicit 404, there is no way to prevent
 the LocaleMiddleware from overriding this and trying the language
 redirect.

 In those comments, it was about catch-all URL patterns.  I'm running into
 something related, but slightly different -- we
 [https://github.com/zulip/zulip/blob/master/zerver/middleware.py#L434
 serve 404's for the `/` endpoint if the subdomain isn't valid], which the
 LocaleMiddleware unhelpfully redirects to (e.g.) `/en/` which isn't any
 less of a 404.

 Would folks be amenable to a patch which disabled the auto-404-redirect
 functionality in the middleware with a flag of some sort?

--

Comment:

 Hi Alex.

 Thanks for the report. Perhaps need an extra coffee to think through if
 it's going to be worth the complexity but... — is this not a middleware
 ordering issue? i.e. If you put your `HostDomainMiddleware` before
 `LocaleMiddleware` would the response returned in `process_request` not
 get sent back to the client before `LocaleMiddleware` ever got the chance
 to look at it?

-- 
Ticket URL: <https://code.djangoproject.com/ticket/32005#comment:1>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/064.589793f1a043e1d735858c370e8a6788%40djangoproject.com.

Reply via email to