powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Файлообменник (организационные моменты)
4 сообщений из 4, страница 1 из 1
Файлообменник (организационные моменты)
    #33460812
Добрый день!
Хочется понять принцип создания более менее сложного файлообменника для внутренней сетки (абоненты одного провайдера).
Требования:
* Размеры файлов ограничены разумными пределами, например 2-5 гигов
* Файлы можно смореть как по FTP гуляя по директориям так и производить поиск по базе.
* Для каждого файла можно делать описание и комментарии.

Пока я вижу это так:
по крайней мере не видел, чтобы большие файлы грузили по протоколу HTTP? когда есть специальный протокол FTP.
Т.е. заливка происходит по FTP в какую то публичную директорию, куда могут писать все.
На лету все файлы проверяются антивирусником и режутся всякие программы, содержащие вредоносный код.
Загрузил файл, человек заходит на сайт и находит список не описанных файлов (назовем их UNSORTED).
Выбирает файл, делает описание и выбирает папку на диске, куда нужно переместить этот файл.
Файл перемещается куда надо и становится доступен например как
ftp://filepomoyka/video/action/filename.avi
и в то же время его описание теперь есть и в БД и можно производить поиск по базе.
Так же за проектом следят модераторы и они в любой момент могут переместить файл и изменить его описание.


Так вот в описанной мной идее есть два нехороших момента, а именно:

так как файлы перемещаются самими пользователями, то может получится так, что разгребать папку UNSORTED сможет и другой юзер, не тот который грузил файл, соответственно он может назвать его не так и описать не так.


и второй момент, все по той же причине второй юзер может начать перемещение файла когда он еще не полностью залит владельцем по FTP.
например: я заливаю фильм "Матрица", залилось 15%, а кто то заходит и видит, что есть файл matrix.avi, он знает о чем фильм, знает его название и начинает делать "добрые дела" - пытается перемещать не полностью заказанный фильм.

С авторизацией более менее такие коллизии решаемы, можно конечно и при регистрации на сайте заводить FTP-аккаунт, и потом не одна публичная папка для свалки на сервер, а у каждого своя. И на сайте потом каждый разгребает свою папку.

Не подскажет ли многознающий ALL, как сделать транзакцией операцию "закачка файла/описание/перемещение куда надо" без авторизации.

Были следующие мысли:
по крону шерстить раз в сутки папку UNSORTED и базу новых описаний.
если есть описание файла и разница между временем создания файла на сервере и текущим временем больше времени необходимого для заливки достаточно большого файла - перемещать его куда надо. и делать доступным для всех ессно.
...
Рейтинг: 0 / 0
Файлообменник (организационные моменты)
    #33460843
DocAl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В общем-то, неполностью залитый файл и не будет виден как filename.avi, если только в процессе заливки связь не оборвалась.
...
Рейтинг: 0 / 0
Файлообменник (организационные моменты)
    #33462098
DocAlВ общем-то, неполностью залитый файл и не будет виден как filename.avi, если только в процессе заливки связь не оборвалась.
Вы уверены?
...
Рейтинг: 0 / 0
Файлообменник (организационные моменты)
    #33462186
DocAl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Зависит от настроек FTP-сервера, конечно, но как правило, да.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Файлообменник (организационные моменты)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]