2010-10-29 3 views
0

Я разрабатываю сайт для размещения файлов, где пользователи могут загружать файлы в свою собственную папку. Эта папка может иметь только квоту в 100 МБ. Я хотел бы реализовать систему, в которой, если пользователь попытается загрузить файл в свою папку, которая уже заполнена до 100 Мб и будет выдавать свою квоту, система не разрешит ее и покажет сообщение пользователю.Ограничение размера файлов для пользователей

Любые идеи

Благодарности

R

+0

Какие серверные технологии вы используете для разработки сайта? – Nivas

ответ

0

Большинство современных файловых систем на большинстве современных операционных систем реализовать какую-то поддержку квот. Если вы не можете использовать их, потому что в операционной системе все файлы принадлежат только одному пользователю, тогда вам понадобится повторная реализация этой функции.

Это означает либо отслеживание размеров файлов при их загрузке, например. строка в таблице базы данных, в этом случае вопрос «сколько они уже используют?» можно ответить одним запросом. В качестве альтернативы вы можете это прорабатывать каждый раз, когда кто-то пытается загрузить файл, найдя все файлы, которыми они владеют (предположительно, из таблицы БД?) И вызывает stat() или аналогично запросу размера каждого файла.

Как только вы знаете, сколько они уже используют запрос POST или какой-либо метод, который вы используете для загрузки, вы укажете размер входящей загрузки.

Будьте осторожны с размером, однако - размер файла часто не совпадает с размером на диске. Что важнее?

Смежные вопросы