Я храню файлы пользователей в их собственном каталоге имен, что-то вроде
/username/file01.jpg
/username/file02.mp4
/username/file03.mp3
Но если больше пользователей приходят и загружают больше файлов, это создает проблему, потому что это приведет к миграции некоторых или многих пользователей на другой диск. Сначала я выбираю решение каталога имен, потому что мне не нужно смешивать имена файлов. Я также не хочу менять имя файла. Также, если другой пользователь загружает одно и то же имя файла, он создает проблему, если файлы хранятся с оригинальным именем.
Что может быть лучшим способом сделать это. У меня есть одно решение, но вы хотите спросить сообщество, это лучший способ.
Я буду использовать последовательные папки, а затем хэш-имя файла для какой-то вещи очень уникальной и сохранить в каталоге. Что я буду делать, это сохранить исходное имя файла и имя пользователя в базе данных и hashvalue имени файла, который хранится на диске.
Когда кто-то захочет получить доступ к этому файлу, я прочитаю этот файл через php либо замените имя, либо сделаем что-то в этом месте, чтобы файл загрузился как исходное имя файла.
У меня есть только это предлагаемое решение. У вас, ребята, есть что-то другое, кроме этого.
Edit:
Я также использую систему папок, и, возможно, для второго варианта я буду использовать виртуальные папки. Моя база данных - MongoDB
Ребята, все ваши ответы были потрясающими и действительно полезными. я хотел дать щедрость всем, вот почему я оставил его, чтобы сообщество могло автоматически предоставлять. Спасибо всем за ваши ответы. Я действительно ценю это.