Hallo Felix,
um direkte Aufrufe über einen URL zu verhindern.
Das verhindert man am wirksamsten dadurch, dass man den Upload-Ordner per Konfiguration des Webservers für HTTP Zugriffe blockiert oder gleich außerhalb des Document Root platziert. Die regulären Zugriffe laufen sowieso über die erwähnte Zugriffsschicht. Eine großartige kryptographisch abgesicherte Namenstarnung ist dann nicht nötig.
Ob man die Uploadfiles auf Ordner verteilen muss, hängt vom Uploadvolumen und vor allem vom verwendeten Filesystem ab. Manche skalieren schlecht mit der Anzahl von Dateien, andere besser. Allerdings erkauft man das Verteilen auf Ordner ggf. damit, dass man nicht nur eine Datei lokalisieren und lesen muss, sondern zwei (ein Ordner ist - je nach FS - auch nur eine Art Datei). Man muss es testen.
Ob sich die Optimierung überhaupt lohnt, hängt vom Zugriffsvolumen der Seite ab. 100 Millionen Dateien, täglich tausende von Uploads und hunderttausende von Downloads? Ja, da lohnt sich der Hirnschmalz. 10000 Dateien, täglich 10 Uploads, 100 Downloads? Pfff, wurscht.
Rolf
sumpsi - posui - clusi