from django.utils.deprecation import MiddlewareMixin
class UserIPMiddleware(MiddlewareMixin):
def process_request(self, request):
x_forwarded_for = request.META.get('HTTP_X_FORWARDED_FOR')
if x_forwarded_for:
ip = x_forwarded_for.split(',')[0]
else:
ip = request.META.get('REMOTE_ADDR')
request.META['REMOTE_IP'] = ip
from django.utils.deprecation import MiddlewareMixin
class UserAgentMiddleware(MiddlewareMixin):
def process_request(self, request):
request.META['HTTP_USER_AGENT'] = request.META.get('HTTP_USER_AGENT', '')
from django.utils.deprecation import MiddlewareMixin
class ReferrerMiddleware(MiddlewareMixin):
def process_request(self, request):
request.META['HTTP_REFERER'] = request.META.get('HTTP_REFERER', '')