2011-01-14 8 views
0

Ich arbeite an einer Web-App, wo Benutzer Bilder hochladen können, die mit ihrem Konto verknüpft sind. Ich versuche herauszufinden, wie diese Bilder im Dateisystem unter Berücksichtigung von Organisation und Sicherheit am besten gespeichert werden können. Ich verwende einen JavaScript-basierten Datei-Uploader, der die Bilder im Web-Root speichern muss, aber ich frage mich, ob es besser wäre, die Bilder für bessere Sicherheit über den Web-Root zu verschieben. Irgendwelche Gedanken zu dieser Angelegenheit würden geschätzt werden.Bilder über oder unter dem Webstamm speichern?

+0

Sind die Bilder öffentlich oder privat? – Calum

+0

Sie können entweder sein, dass ein Benutzer wählen kann, Bilder zu teilen oder nicht. – JGDev

Antwort

0

Aus Sicherheitsgründen möchten Sie wahrscheinlich einen Speicherort auswählen, an dem Benutzer die Bilder oder Verzeichnisse Ihrer Websiteanwendung nicht sehen können, wenn sie Ihren Bildbrowser verwenden. Daher ist eine andere Verzeichnisposition als Ihre Websitewurzel eine gute Idee. Der Speicherort kann ein virtuelles Verzeichnis sein, das auf einen beliebigen Speicherort in Ihrem Dateisystem verweist, sofern Sie über entsprechende Verzeichnissicherheit zum Lesen/Schreiben von Dateien über Ihren Webserver verfügen.

Virtuelle Verzeichnisse können zeigen, wo Sie möchten, und können Ihre Backup-Strategien ein wenig einfacher zu unterstützen, wenn Sie alle dynamischen Benutzerdateien von Zeit zu Zeit sichern.

+0

Ich hatte noch keine virtuellen Verzeichnisse in Betracht gezogen. Ich muss mich darum kümmern. Was ich jedoch wirklich wissen möchte, ist, ob es von Vorteil ist, hochgeladene Bilder über dem Webstamm zu platzieren und sie über eine Art Bildcontroller anzuzeigen, anstatt sie einfach unter dem Webstamm (z. B. in einem Upload-Verzeichnis) zu belassen und anzuzeigen sie "natürlich" – JGDev

+0

Virtuelle Verzeichnisse ermöglichen es Ihnen, Dateispeicher auf separaten Servern/Speicherorten zu partitionieren. Dies kann von Vorteil sein, wenn Sie viele Medien in kostengünstigeren Speichermedien speichern müssen (z. B. wenn der Speicher nicht die gleiche Fehlertoleranz/Wiederherstellung/Geschwindigkeit erfordert wie der DB-Server oder der Webserverspeicher). Dies wäre im Wesentlichen so, als würde man "über die Web-Wurzel" platzieren. Nun, könnte es sein. Es könnte buchstäblich überall sein. Aus Verwaltungssicht könnte es jedoch mehr Arbeit sein, Ihre Anwendungen auf neue Server zu migrieren. Das Speichern von Bildern unter Ihrem Web-Root vereinfacht die zukünftige Migration. –