- modified method in RequestHeader that delivers the host name of requester: no more reverse domain lookup (may have killed interface performance in some cases)

- added logging output for shutdown servlet: show ip of requester of the shutdown

git-svn-id: https://svn.berlios.de/svnroot/repos/yacy/trunk@6512 6c8d7289-2bf4-0310-a012-ef5d649a1542
pull/1/head
orbiter 15 years ago
parent e34e63a039
commit 66923ebc6c

@ -62,9 +62,8 @@ public class SettingsAck_p {
final Switchboard sb = (Switchboard) env;
// get referer for backlink
final String referer = header.get(RequestHeader.REFERER);
final String referer = header.referer();
prop.put("referer", (referer == null) ? "Settings_p.html" : referer);
//if (post == null) System.out.println("POST: NULL"); else System.out.println("POST: " + post.toString());
if (post == null) {

@ -29,6 +29,9 @@
import java.io.File;
import net.yacy.kelondro.logging.Log;
import de.anomic.http.server.HeaderFramework;
import de.anomic.http.server.RequestHeader;
import de.anomic.search.Switchboard;
import de.anomic.server.serverObjects;
@ -45,13 +48,17 @@ public class Steering {
prop.put("info", "0"); //no information submitted
if (prop == null) { return null; }
final String requestIP = post.get(HeaderFramework.CONNECTION_PROP_CLIENTIP, "127.0.0.1");
// handle access rights
if (!sb.verifyAuthentication(header, false)) {
Log.logInfo("STEERING", "log-in attempt for steering from " + requestIP);
prop.put("AUTHENTICATE", "admin log-in"); // force log-in
return prop;
}
if (post.containsKey("shutdown")) {
Log.logInfo("STEERING", "shutdown request from " + requestIP);
sb.terminate(100);
prop.put("info", "3");
@ -59,6 +66,7 @@ public class Steering {
}
if (post.containsKey("restart")) {
Log.logInfo("STEERING", "restart request from " + requestIP);
yacyRelease.restart();
prop.put("info", "4");
@ -66,6 +74,7 @@ public class Steering {
}
if (post.containsKey("update")) {
Log.logInfo("STEERING", "update request from " + requestIP);
final boolean devenvironment = new File(sb.getRootPath(), ".svn").exists();
final String releaseFileName = post.get("releaseinstall", "");
final File releaseFile = new File(sb.getRootPath(), "DATA/RELEASE/".replace("/", File.separator) + releaseFileName);

@ -35,6 +35,7 @@ import net.yacy.document.parser.html.CharacterCoding;
import net.yacy.kelondro.util.DateFormatter;
import net.yacy.kelondro.util.FileUtils;
import de.anomic.http.server.HeaderFramework;
import de.anomic.http.server.RequestHeader;
import de.anomic.search.Switchboard;
import de.anomic.server.serverObjects;
@ -50,11 +51,11 @@ public class cytag {
StringBuilder connect = new StringBuilder();
connect.append('{');
addJSON(connect, "time", DateFormatter.formatShortMilliSecond(new Date()));
addJSON(connect, "trail", header.get("Referer", ""));
addJSON(connect, "trail", header.referer());
addJSON(connect, "nick", (post == null) ? "" : post.get("nick", ""));
addJSON(connect, "tag", (post == null) ? "" : post.get("tag", ""));
addJSON(connect, "icon", (post == null) ? "" : post.get("icon", ""));
addJSON(connect, "ip", header.get("CLIENTIP", ""));
addJSON(connect, "ip", header.get(HeaderFramework.CONNECTION_PROP_CLIENTIP, ""));
addJSON(connect, "agent", header.get("User-Agent", ""));
connect.append('}');

@ -25,12 +25,12 @@ package de.anomic.http.server;
import java.io.IOException;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
import java.util.Properties;
import net.yacy.kelondro.data.meta.DigestURI;
import net.yacy.kelondro.util.DateFormatter;
import de.anomic.server.serverCore;
@ -79,10 +79,15 @@ public class RequestHeader extends HeaderFramework {
}
public String refererHost() {
String refererHost = "";
final String referer = referer();
if (referer.length() > 0) try { refererHost = (new URL(referer)).getHost(); } catch (final MalformedURLException e) {}
return refererHost;
if (referer.length() == 0) return referer;
DigestURI url;
try {
url = new DigestURI(referer, null);
return url.getHost();
} catch (MalformedURLException e1) {
return referer;
}
}
public Date ifModifiedSince() {

Loading…
Cancel
Save