From 75cda15ea4ee0b2608d9f07cae718db4e1df8c45 Mon Sep 17 00:00:00 2001 From: Ilya Kreymer Date: Wed, 6 Aug 2014 12:39:48 -0700 Subject: [PATCH] fix self-redirect check with relative urls in Location --- pywb/webapp/replay_views.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pywb/webapp/replay_views.py b/pywb/webapp/replay_views.py index 9f32ad5d..6572419f 100644 --- a/pywb/webapp/replay_views.py +++ b/pywb/webapp/replay_views.py @@ -1,5 +1,6 @@ import re from io import BytesIO +from urlparse import urlsplit from pywb.utils.statusandheaders import StatusAndHeaders from pywb.utils.wbexception import WbException, NotFoundException @@ -224,6 +225,9 @@ class ReplayView(object): return location_url = location_url.lower() + if location_url.startswith('/'): + host = urlsplit(cdx['original']).netloc + location_url = host + location_url if (ReplayView.strip_scheme(request_url) == ReplayView.strip_scheme(location_url)):