reactivate Domain handler for .yacy / .yacyh handling

pull/1/head
reger 11 years ago
parent b1ce70434e
commit 332c6d4fe1

@ -101,8 +101,7 @@ public class Jetty8HttpServerImpl implements YaCyHttpServer {
// define list of YaCy specific general handlers // define list of YaCy specific general handlers
HandlerList handlers = new HandlerList(); HandlerList handlers = new HandlerList();
handlers.setHandlers(new Handler[] handlers.setHandlers(new Handler[]
//TODO: domainHandler causes a closed response.outputstream if resolved to local address {domainHandler, new ProxyCacheHandler(), new ProxyHandler()
{/*domainHandler,*/ new ProxyCacheHandler(), new ProxyHandler()
/*, resource_handler, new DefaultHandler() */}); /*, resource_handler, new DefaultHandler() */});
// context handler for dispatcher and security (hint: dispatcher requires a context) // context handler for dispatcher and security (hint: dispatcher requires a context)

@ -35,11 +35,13 @@ import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletRequestWrapper; import javax.servlet.http.HttpServletRequestWrapper;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import net.yacy.cora.protocol.Domains;
import net.yacy.server.http.AlternativeDomainNames;
import org.eclipse.jetty.server.Handler; import org.eclipse.jetty.server.Handler;
import org.eclipse.jetty.server.Request; import org.eclipse.jetty.server.Request;
import org.eclipse.jetty.server.handler.AbstractHandler; import org.eclipse.jetty.server.handler.AbstractHandler;
import net.yacy.server.http.AlternativeDomainNames;
/** /**
* handling of request to virtual ".yacy" domain determines public adress from * handling of request to virtual ".yacy" domain determines public adress from
@ -80,6 +82,8 @@ public class YacyDomainHandler extends AbstractHandler implements Handler {
newHost = hostPort; newHost = hostPort;
newPort = 80; newPort = 80;
} }
if (newHost.equals(alternativeResolvers.myIP())) return;
if (Domains.isLocal(newHost, null)) return;
RequestDispatcher dispatcher = request.getRequestDispatcher(path + target); RequestDispatcher dispatcher = request.getRequestDispatcher(path + target);
dispatcher.forward(new DomainRequestWrapper(request, newHost, newPort), response); dispatcher.forward(new DomainRequestWrapper(request, newHost, newPort), response);
baseRequest.setHandled(true); baseRequest.setHandled(true);
@ -88,8 +92,8 @@ public class YacyDomainHandler extends AbstractHandler implements Handler {
private class DomainRequestWrapper extends HttpServletRequestWrapper { private class DomainRequestWrapper extends HttpServletRequestWrapper {
private String newServerName; final private String newServerName;
private int newServerPort; final private int newServerPort;
public DomainRequestWrapper(HttpServletRequest request, String serverName, int serverPort) { public DomainRequestWrapper(HttpServletRequest request, String serverName, int serverPort) {
super(request); super(request);

Loading…
Cancel
Save