execute bans

This commit is contained in:
erichhasl
2017-11-19 02:22:27 +01:00
parent 8862b65dca
commit d6486264ae
3 changed files with 25 additions and 0 deletions
+20
View File
@@ -0,0 +1,20 @@
from django.shortcuts import render
from startpage.models import Banned
class BlockedIpMiddleware(object):
def process_request(self, request):
if get_client_ip(request) in [b.ip_address for b in
Banned.objects.all()]:
return render(request, 'startpage/bann.html')
return None
def get_client_ip(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')
return ip
+1
View File
@@ -56,6 +56,7 @@ INSTALLED_APPS = (
) )
MIDDLEWARE_CLASSES = ( MIDDLEWARE_CLASSES = (
'sas_web.block_ip.BlockedIpMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware', 'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware', 'django.middleware.csrf.CsrfViewMiddleware',
+4
View File
@@ -8,3 +8,7 @@ def index(request):
def impressum(request): def impressum(request):
return render(request, 'startpage/impressum.html') return render(request, 'startpage/impressum.html')
def banned(request):
return render(request, 'startpage/bann.html')