diff --git a/source/net/yacy/crawler/retrieval/Response.java b/source/net/yacy/crawler/retrieval/Response.java index 5784f0267..d3fb279a5 100644 --- a/source/net/yacy/crawler/retrieval/Response.java +++ b/source/net/yacy/crawler/retrieval/Response.java @@ -791,24 +791,14 @@ public class Response { public DigestURL referrerURL() { if (this.requestHeader == null) return null; - try { - final String r = this.requestHeader.get(RequestHeader.REFERER, null); - if (r == null) return null; - return new DigestURL(r); - } catch (final Exception e) { - return null; - } + return this.requestHeader.referer(); } public byte[] referrerHash() { if (this.requestHeader == null) return null; - final String u = this.requestHeader.get(RequestHeader.REFERER, ""); - if (u == null || u.isEmpty()) return null; - try { - return new DigestURL(u).hash(); - } catch (final Exception e) { - return null; - } + final DigestURL url = this.requestHeader.referer(); + if (url == null) return null; + return url.hash(); } public boolean validResponseStatus() { diff --git a/source/net/yacy/http/servlets/UrlProxyServlet.java b/source/net/yacy/http/servlets/UrlProxyServlet.java index 390f8d08a..35df1c0e2 100644 --- a/source/net/yacy/http/servlets/UrlProxyServlet.java +++ b/source/net/yacy/http/servlets/UrlProxyServlet.java @@ -154,9 +154,6 @@ public class UrlProxyServlet extends HttpServlet implements Servlet { prop.put(HeaderFramework.CONNECTION_PROP_CLIENTIP, Domains.LOCALHOST); prop.put(HeaderFramework.CONNECTION_PROP_CLIENT_HTTPSERVLETREQUEST, request); - yacyRequestHeader.put(HeaderFramework.HOST, hostwithport ); - yacyRequestHeader.put(HeaderFramework.CONNECTION_PROP_PATH, proxyurl.getPath()); - // 4 & 5 get & index target url final ByteArrayOutputStream tmpproxyout = new ByteArrayOutputStream(); HTTPDProxyHandler.doGet(prop, yacyRequestHeader, tmpproxyout, ClientIdentification.yacyProxyAgent); diff --git a/source/net/yacy/http/servlets/YaCyProxyServlet.java b/source/net/yacy/http/servlets/YaCyProxyServlet.java index f2b697488..bcea16faa 100644 --- a/source/net/yacy/http/servlets/YaCyProxyServlet.java +++ b/source/net/yacy/http/servlets/YaCyProxyServlet.java @@ -125,9 +125,6 @@ public class YaCyProxyServlet extends HttpServlet implements Servlet { prop.put(HeaderFramework.CONNECTION_PROP_CLIENTIP, Domains.LOCALHOST); prop.put(HeaderFramework.CONNECTION_PROP_CLIENT_HTTPSERVLETREQUEST, request); - yacyRequestHeader.put(HeaderFramework.HOST, hostwithport ); - yacyRequestHeader.put(HeaderFramework.CONNECTION_PROP_PATH, proxyurl.getPath()); - final ByteArrayOutputStream tmpproxyout = new ByteArrayOutputStream(); HTTPDProxyHandler.doGet(prop, yacyRequestHeader, tmpproxyout, ClientIdentification.yacyProxyAgent); diff --git a/source/net/yacy/server/http/HTTPDProxyHandler.java b/source/net/yacy/server/http/HTTPDProxyHandler.java index 10d3b931b..5919a8b98 100644 --- a/source/net/yacy/server/http/HTTPDProxyHandler.java +++ b/source/net/yacy/server/http/HTTPDProxyHandler.java @@ -256,7 +256,8 @@ public final class HTTPDProxyHandler { } /** - * Get a page from the remote server as proxy request for the client + * Get a page from the remote server as proxy request for the client. + * The target url is expected in the conProp CONNECTION_PROP_DIGESTURL * * @param conProp a collection of properties about the connection, like URL * @param requestHeader The header lines of the connection from the request @@ -298,8 +299,6 @@ public final class HTTPDProxyHandler { log.finest(reqID + " using redirector to " + url); } conProp.put(HeaderFramework.CONNECTION_PROP_DIGESTURL, url); - requestHeader.put(HeaderFramework.HOST, url.getHost() + ":" + url.getPort()); - requestHeader.put(HeaderFramework.CONNECTION_PROP_PATH, url.getPath()); } @@ -401,7 +400,7 @@ public final class HTTPDProxyHandler { * Get requested proxied page from the web * * @param conProp - * @param url + * @param url requested target url * @param requestHeader * @param cachedResponseHeader * @param respond