On Nov 3, 10:23 am, "Jakub Labath" <[EMAIL PROTECTED]> wrote:
> Hi All,
>
> I have serious problem with my django websites.
> I've experienced random user switching.
I experienced this on my site. I figured it was some sort of weird race
condition since it only happened every once in a while.
I worked around it by storing the current ip of the user into the
session in the login view. Then I made some custom middleware with a
process_view function, which if a user is logged in, checked the ip
from the session with the request's ip. If not, i'd log the user out.
Since it only happened every once in a while, users weren't bothered.
Then, I discovered that it did bother some users of certain ISP's
(AOL), where the IP changed quite often. So, I disabled this custom
middleware. The problem reappeared. I then put back the middleware, but
made both branches passthrough. The problem hasn't reappeared ever
since. Just doing that must disable the race condition. It's weird. I
don't know.
What I use now:
class testmw(object):
def process_view(self, request, view_func, view_args, view_kwargs):
if view_func != huzzah.forum.views.login:
if request.session.get('LOGGED_IN_IP','')[:5] !=
request.META['REMOTE_ADDR'][:5]:
return None
return None
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"Django users" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at
http://groups.google.com/group/django-users?hl=en
-~----------~----~----~----~------~----~------~--~---