diff --git a/requests/sessions.py b/requests/sessions.py index 334db58e..023edfbd 100644 --- a/requests/sessions.py +++ b/requests/sessions.py @@ -134,8 +134,8 @@ class SessionRedirectMixin(object): url = requote_uri(url) prepared_request.url = to_native_string(url) - # cache the url - if resp.is_permanent_redirect: + # Cache the url, unless it redirects to itself. + if resp.is_permanent_redirect and req.url != prepared_request.url: self.redirect_cache[req.url] = prepared_request.url # http://tools.ietf.org/html/rfc7231#section-6.4.4