2013-07-04 13 views
5

Ich habe eine JSP Web-Anwendung Projekt StudentApp und ich in meinem server.xml konfiguriert zeigen Verbieten wie folgtdie Verzeichnisse in meinem Stammordner

< Host name="test.com" appBase="D:/StudentApp" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"> Context path="" reloadable="true" crossContext="true" > /Context> /Host>

Wenn ich meine Anwendung begann es gut läuft . Ich habe einige Ordner in D:/StudentApp wie Eigenschaften, ROOT, svn und ich kann auf alle Ordner von meiner Website zugreifen.
Zum Beispiel kann ich wie test.com/properties etc. zugreifen. Wenn ich diesen Pfad richtig angeben. Ich möchte beschränken nur mit ROOT Ordner..Haben jemand mit der gleichen Art von Problem konfrontiert? Wie kann ich das machen?

+0

versuchen, alles unter WEB-INF und sehen – Satya

+0

Danke für Ihren Kommentar.Seit ich habe bereits einige Dateien konfiguriert, kann ich den Speicherort nicht zu WEB-INF ändern. – Alex

+1

Sie müssen. Es sei denn, Sie möchten die hässliche Lösung mit der Konfiguration der Zugriffsregeln Ihres HTTP-Servers. –

Antwort

0

Gemäß dem Standard für Webanwendungen ist alles unter der AppBase (außer WEB-INF) für den Browser sichtbar (wenn das Browserverzeichnis aktiviert ist oder die vollständige URL der Datei verwendet). Also, wenn Sie auf diese Dateien zugreifen Benutzer nicht wollen, haben sie unter WEB-INF zu gehen

0

Sie haben zwei Möglichkeiten:

  1. einen Filter entwickeln Sie Web-Anwendung, so muss jede Anfrage sein überprüft vor der Verarbeitung zu Ihrer Anwendung.
  2. Verwenden tomcat Ventil-Funktion und entwickeln ein Ventil so die Anforderung nur ROOT Ordner

Sofern Sie ein Ready-to-verwenden Ventil finden verengen kann ich die erste empfehlen.