|
|
|
|||||||
| Знаете ли Вы, что ... | |
| ...до того как открыть новую тему, стоит использовать поиск: такая тема уже может существовать. | |
| << Предыдущий совет - Случайный совет - Следующий совет >> | |
| Веб-ресурсы и доменные имена Раздел про интернет-ресурсы и доменные имена |
| Ответить |
|
|
Опции темы | Опции просмотра |
|
|
#36 |
|
Заблокирован(а)
Сообщений: 18,519
+ 10,956
12,586/6,453
– 307
539/385
![]() |
Александр Баягин, Rooslan Khayrov, беру назад свои слова про «паранойю», WebDAV-у быть!
Как раз идеальное решение, избавляющее от написания API для локальных приложений. Тем более, что они становятся не так уж и нужны. (и готовых клиентов валом и многие ОС изначально умеют с ним работать) Спасибо что напомнили про него! |
|
|
Ответить |
|
|
#37 |
|
Заблокирован(а)
Сообщений: 18,519
+ 10,956
12,586/6,453
– 307
539/385
![]() |
При более подробном изучении WebDAV столкнулся с одной серьезной проблемой, может кто поможет решить.
Значит так: У пользователя есть своя папка на сервере, там лежат файлы, если мы их загружали через вебморду, то в базе будут данные о них (вес, тип, когда загружен и так далее). Если же пользователь свой файл зальет/удалит через WebDAV (как с подключенной флешки), то это ни как не отразится в MySQL и скрипты не смогут отразить изменения в веб-версии. Пока вижу единственное решение — писать дополнительный скрипт, который по событию (подключился/отключился юзер или по времени) будет пробегать по всей куче файлов и синхронизировать реальные файлы с данными в Базе. Но, это мало того, что «тяжелое» решение, так еще и кривое, в том смысле, что не все данные можно будет получить таким способом. Ограничиваться же просто PHP-версией файлового менеджера в брауузере так-же не хотелось бы, это сразу ставит в тупик идею «расшаривания» отдельных файлов, так как запись о файле может еще остаться в Базе, а файла уже не быть на диске. Последний раз редактировалось JackDaniels; 25.08.2012 в 20:37. |
|
|
Ответить |
|
|
#40 |
![]() Google
software engineer
AKA:Y combinator
Сообщений: 418
+ 114
374/183
– 6
9/8
![]() |
Допилить WebDAV-сервер — наиболее кошерный вариант, всё остальное костыли.
mod_dav написан с возможностью различных бэкэндов в уме, файловая система — лишь один из вариантов (mod_dav_svn вспомните). Нужно будет лишь форкнуть mod_dav_fs в свой модуль и немного дописать. Есть ещё легче расширяемые standalone WebDAV серверы, например на Python, и даже на PHP. Я уж не знаю, как оно поведёт себя под нагрузкой. Ребята из Яндекса для своего Я.Диска написали DAV-модуль к серверу на Erlang: Код:
$ curl -v https://webdav.yandex.ru/ > /dev/null ... < Server: MochiWeb/1.0 Реверс-проксировать WebDAV, цепляя свои обработчики на PUT и DELETE. Слушать каталог загрузок inotify вместо сканирования по таймеру. Примонтировать этот самый каталог через свою pass-through FUSE и писать в базу в соответствующих обработчиках :-D P.S. Вам помимо обновления метаданных ещё как минимум квоты нужно будет сделать. Последний раз редактировалось Rooslan Khayrov; 25.08.2012 в 22:39. |
|
|
Ответить |
|
"+" от:
|
|