Ich habe eine Grails-App. Ich möchte alle Bilder, die Benutzer hochladen, in ein Verzeichnis außerhalb meines Web-App-Verzeichnisses verschieben, irgendwo anders auf der Festplatte. Dann möchte ich meiner Anwendung erlauben, sie auf Seiten bereitzustellen, aber Benutzer können nicht auf das Verzeichnis zugreifen. Ich kenne eine Möglichkeit, einen ImageController zu verwenden, der das Bild liest und es in die Ansicht streamt, aber das hat einige Nachteile, wie z. B. Caching. Ich habe mich gefragt, ob es eine Möglichkeit gibt, Apache zu erlauben, Bilder aus einem lokalen Verzeichnis außerhalb der Web-App bereitzustellen und dies nur auf die App zu beschränken.
Antwort1
Ich habe das versucht und es hat funktioniert. Aber es ermöglicht auch dem Client, darauf zuzugreifen, da es nur abgebildet wird. Aber ich bin auch dankbar, wenn jemand mehr dazu sagen und eine andere Lösung anbieten kann, die mehr Kontrolle darüber bietet, wie Web-Apps und Benutzer auf diesen Bereich zugreifen können.
grundsätzlich wurde dies im Tag von Tomcat /conf/server.xml
hinzugefügt <Host>
:
<Context docBase="/path/to/images" path="/images" />
Habe herausgefunden, dass jemand hier ungefähr das geantwortet hat, was ich brauchte:Einfachste Möglichkeit, statische Daten bereitzustellen