Использование файлового загрузчика
Опубликовано: script0l0g · 11.05.2020 · 02:00 ••• Обновление: 15.10.2021 · 11:56 24

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

При этом для каждого сайта автоматически создаётся отдельный аккаунт на указанном внешнем сервисе. Мы также используем эту возможность на авторских сайтах для размещения дублирующих "зеркал" отдельных программных продуктов (в частности – отдельных версий расширений в виде CRX-файлов), а также в качестве дополнительного временного* хранения любых пользовательских файлов.

* Стандартный срок хранения на "депозите" ограничен 3 месяцами с момента последнего скачивания файла. При необходимости, администраторы любого сайта Проекта могут оперативно перемещать необходимые материалы в основное хранилище сайта с неограниченным временем хранения либо "продлять" срок хранения необходимых файлов во внешнем хранилище.

Оперативная загрузка непосредственно с сайта

Для повышения удобства загрузки и упрощения доступа наших пользователей к функциям загрузки непосредственно со страниц сайтов Проекта, мы применяем одну из стандартных форм флэш-загрузчика, выглядящую вот так:

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

Временное хранилище для комментариев

Мы уже описывали возможность использования загрузчика в комментариях, вкратце напомним, что кнопка его вызова присутствует только на страницах с возможностью комментирования материала и относится непосредственно к форме ввода комментария. При этом кнопка доступна только для авторизованных пользователей И только если автор материала разрешил комментирование материала (когда есть сама форма ввода комментария).

Напомним также, что загрузка из блока комментариев происходит на "общую файлопомойку", доступную для всех сайтов Проекта. Это сделано именно исходя из "временного" статуса хранения файлов, загруженных через комментарии (весь "мусор" по истечении дефольтного срока хранения автоматически удаляется), а также с целью облегчения работы администраторов при "разборе этих завалов".)

Внешнее зеркало для авторских файлов

Второй "точкой заброски", где применяется указанный флэш-загрузчик, является доработанная нами штатная форма размещения материалов в файловых архивах сайтов Проекта. В этой форме мы добавили флэш-загрузчик в качестве одного из полей для размещения автором материала ссылок на внешние зеркала. Это поле необязательно для заполнения автором материала, но мы посчитали целесообразным предоставить нашим авторам достаточно удобный инструмент для размещения копий своих файлов, как говорится, "не отходя от кассы".)

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

Флэш умер. Да здравствует флэш! :)

Да, мы "в курсе", что флэш-плагины в большинстве браузеров на сегодняшний день практически "вне закона". Тем не менее, пока ещё есть возможность использования этого инструмента на сайтах. Надеемся, что к моменту окончания официальной поддержки этого плагина (и полного "отламывания" всего функционала, связанного с ним) владельцы "депозита" выпустят обновлённую версию своего штатного загрузчика, которой мы заменим текущий флэш-загрузчик.

В любом случае, сама идея "подключения" внешнего хранилища непосредственно на сайтах нашего Проекта будет реализована тем или иным способом, позволяющим нашим пользователям с минимальными затратами времени загружать любые дополнительные файлы для своих материалов. Ну а пока "король ещё жив", советуем просто разрешить в настройках браузера использование флэш-плагина на наших сайтах.

Включение флэш-плагина и решение проблем

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

О том, как это сделать – смотрим здесь:

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

Быстрая загрузка файлов большого размера

Эта функция доступна на наших сайтах только для зарегистрированных (авторизованных) пользователей, позволяет быстро загрузить большой файл и получить на него прямую ссылку.

Для удобства загрузки больших файлов на отдельных сайтах Проекта можно использовать дополнительную функцию внешнего загрузчика, работающую с сервисом облачного хранения WDHO.RU.

Мы выбрали именно этот сервис для второго "штатного" загрузчика по следующим причинам:

  • Российская площадка, весь интерфейс на русском языке (опционально есть английский).
  • Нет рекламы и прочего "мусора" на страницах загруженных файлов, отсутствие ожидания при скачивании.
  • Для зарегистрированного пользователя бесплатно предоставляется до 160GB места в хранилище.
  • Хороший объём "разовой" загрузки – до 4GB анонимно и от 5GB при регистрации на сервисе.
  • Удобный интерфейс управления "своими" файлами для зарегистрированных пользователей сервиса.
  • Возможность получение прямых ссылок в разных форматах (в т.ч. – в bb-коде для вставки в комментарий).
  • Достаточный срок хранения (минимум 90 дней) до момента удаления файла (от последнего скачивания).

Вызов фрейма загрузчика совмещён с кнопкой переходов в файловый архив конкретного сайта. Фрейм подгружается только по требованию, при щелчке ПКМ с зажатой клавишей ALT по указанной кнопке (у авторизованного пользователя на кнопке отображается подсказка).

После окончания подгрузки фрейма, он автоматически открывается и отображается рядом с кнопкой загрузки. Значок кнопки вызова при этом меняется на "зелёное облако" (см.рисунок выше).

Временно скрыть/показать фрейм можно щелчком ЛКМ по этой же кнопке. Повторный ALT+ПКМ-щелчок удаляет фрейм внешнего загрузчика и переключает обратно на режим загрузки с сайта (по умолчанию). Также можно открыть виджет загрузчика в отдельном окне, щёлкнув по кнопке вызова ПКМ c зажатыми клавишами ALT и CTRL.

На текущий момент функция облачного загрузчика является штатной "фичей" сайтов Проекта и подключена на этом сайте, в нашей "Песочнице" и на всех авторских сайтах, входящих в структуру Проекта.

Быстрая загрузка файлов для прямого доступа

Эта функция также доступна на наших сайтах только для зарегистрированных (авторизованных) пользователей, позволяет быстро загрузить файл размером до 1 GiB и получить на него реальную прямую ссылку.

Для быстрого обмена одиночными файлами непосредственно с сайтов Проекта можно использовать дополнительную функцию внешнего файлового загрузчика, работающую с сервисом хранения X0.AT. В отличие от облачного загрузчика, описанного выше, срок хранения зависит только от размера файла и варьируется в пределах от 10 до 360 дней.

Мы выбрали указанный сервис для третьего "штатного" загрузчика по следующим причинам:

  • Открытый исходный код, свободная лицензия (см. страницу проекта на GitHub'е), лёгкость сервиса.
  • Простейший интерфейс, кастомная форма для загрузки на любом желаемом языке (у нас это русский).
  • Для создания формы не требуется подгрузка внешних виджетов, отсутствие флэша, только чистый HTML.
  • Не требуется регистрация, ввод капчи и иные проверки как при загрузке, так и при скачивании по ссылкам.
  • Нет рекламы и прочего "мусора", в принципе нет никаких задержек при скачивании загруженных файлов.
  • Нет никаких ограничений на тип закачиваемого файла, нет и различных "правовых" и т.п. ограничений.)
  • Хороший объём "одиночной" загрузки – до 1 GiB, нет ограничений на количество повторных загрузок.
  • Получение настоящей прямой ссылки сразу после закачки (других вариантов на этом сервисе просто нет!).
  • Приемлемый срок минимального хранения (10 дней) до момента удаления файла (не зависит от скачиваний).
  • Отличный максимальный срок хранения (практически до года без малого) до момента автоудаления файла.

Вызов формы файлового загрузчика, также как и фрейма облачного, совмещён с кнопкой переходов в файловый архив конкретного сайта. Форма подгружается только по требованию, при щелчке ПКМ с зажатой клавишей CTRL по этой кнопке (у авторизованного пользователя на кнопке отображается подсказка).

Форма загружается и открывается немедленно, отображается слева от кнопки загрузки. Значок кнопки вызова при этом меняется на "зелёный аплоад" (см.рисунок выше).

Обратите внимание, что кнопка "Загрузить" изначально заблокирована, разблокируется только при выборе конкретного файла. Это сделано для повышения "дуракоустойчивости" и ограничения отправки пустых запросов на сервис хранения.

В нижней части формы мы добавили инфо-строку, меняется динамически – при указании файла для загрузки отображает его размер и вычисленный срок хранения (см.рисунок ниже).

Для выбора файла следует нажать левую* кнопку или просто перетащить нужный файл на эту кнопку (если ваш браузер поддерживает такую возможность). После этого нажимаем кнопку "Загрузить" и запускаем сам процесс загрузки:

* Надпись на кнопке выбора файла зависит от конкретного браузера и его текущей локали (это стандартная надпись для файловых полей) и может выглядеть как "Выберите файл", "Обзор" и т.д..

Загрузка файлов в этом случае всегда выполняется в новой вкладке. Связано с тем, что интерфейс сервиса настолько прост, что не предусматривает никакого информирования пользователя о процессе загрузки (только процент загрузки в строке состояния страницы). При этом пользователю нет необходимости держать открытой исходную страницу сайта до окончания загрузки и получения конечного URL на сохранённый файл.

В инфо-строке также выводится предупреждение о превышении максимально допустимого размера файла (не более 1 GiB, ограничено самим сервисом):

Кроме того, при выборе слишком большого файла кнопка загрузки автоматически* блокируется:

* Во избежание ошибок и потери времени на выполнение таких загрузок, сервис в итоге не сможет разместить файл, превышающий максимальный размер.

После вызова форма будет доступна до перезагрузки страницы. Временно скрыть/показать форму можно щелчком ЛКМ по той же кнопке ("зелёный аплоад"). По аналогии с фреймом облачного загрузчика, ALT+ПКМ-щелчок удаляет форму файлового загрузчика и переключает обратно на режим загрузки с сайта (по умолчанию).

На текущий момент функция файлового загрузчика является штатной "фичей" сайтов Проекта и подключена на этом сайте, в нашей "Песочнице" и на всех авторских сайтах, входящих в структуру Проекта.


См.также: Рабочий вариант этой статьи в "Песочнице".

Официальные документы script0l0g
script0l0g 11.05.2020 15.10.2021 402 5.0

Поделиться

Всего комментариев: 24
1
21 GoodCRX 15.10.2021 • 10:58
На всех сайтах Проекта в дополнение к облачному загрузчику добавлена фича упрощённой загрузки файлов с получением реально прямых ссылок (без каких-либо редиректов, одноразовых ключей и прочей лабуды)).
Статья дополнена  описанием внешнего файлового загрузчика.
Как всегда:
1. Нашему Бармалеичу - "решпекты и пиво" за настойчивое "давление" по прикрутке этой фичи. wink
2. "Главному пилильщику" Скриптологу - тоже самое вдвойне - за реализацию прикрутки. smile
2
22 script0l0g 15.10.2021 • 12:24
Только хотел проанонсировать фичу, а оно уже…))
Ну раз уж обломался с главной новостью, добавлю пару технических ремарок:
1. Фича немного по-разному работает в лисе и хромом, причём, в хромом - более корректно, при отмене выбора файл сбрасывается и кнопка блокируется. В лисе предыдущий файл "висит" до замены новым и кнопка не блокируется.
2. Пробовал прикрутить вывод целевого окна загрузчика в попап, некрасиво как-то, поэтому оставил только один вариант, с локальной формой и редиректом на новую вкладку при запуске загрузки.
3. Заранее выскажу мнение про прикрутку аналогичной фичи к блоку юзер-каментов (там сейчас есть только флэш-загрузчик на "общую помойку" на "депозите") - я считаю это дублирование функций  нецелесообразным с т.з. того, что у нас верхний блок сайта "прибит гвоздями" и форма загрузчика (и нового, и облачного) в принципе и так всегда "под рукой". То же самое касается обратного - прикручивать флэш-лоадер наверх я тоже не вижу смысла, у них задачи хоть и схожие, но всё же разные (как минимум - нашей "помойкой" мы можем управлять, сторонними ресурсами - нет).
PS: за пиво спасибо, сижу, пью теперь… biggrin
0
23 GoodCRX 15.10.2021 • 14:13
Цитата
а оно уже…))
Да я ещё вчера твои "эксперименты" увидел.)))
А сегодня просто с утра "пас" этот материал, смотрю - текст есть, время идёт, анонса нет, ну я и… biggrin 
По существу прикрученного: мне понравилось, шустренько и просто, самое то получилось! thumb
0
24 kmailer 15.10.2021 • 16:18

Цитата
Надпись на кнопке выбора файла зависит от конкретного браузера и его текущей локали
Да, от локали точно зависит, смотрится немного дико, конечно, но наверное это никак не поправить.)
0
20 script0l0g 07.04.2021 • 12:04
Поправил в статье про прикрутку внешнего загрузчика на всех наших сайтах (было только про Песочницу и пару авторских), давно уже штатная фича… wink
Заодно поправил ссылки на статьи про включение флэша, официальные теперь стали бесполезны.
1
17 xweb 27.05.2020 • 18:29
Вот только оставь вас без присмотра, тут же что-то присобачат. biggrin 

По функции загрузчика: поддерживаю, думаю, штука в целом полезная и сервис выбран вполне адекватный.
В общем, Бармалею – решпект за наводку, Скриптологу – понятно, за "воплощение в железке". thumb 

Не уверен, что будет часто нужна на главном сайте, но можно и сюда пристроить. Ссылку по умолчанию можно сделать на корень файлового архива сайта, ограничивать для "только членов профсоюза" здесь тоже надо, иначе это будет "проходной двор". Но сначала давайте, всё же, дождёмся "старшего по камбузу", пусть своё слово скажет.)
0
18 GoodCRX 29.05.2020 • 03:35
А вот соглашусь.))
Идея быстрого перехода в "загрузки" вполне правильная, пусть пока у нас на "главном" этот раздел и пустой.
Понравилась и фича с облачным фреймом, здесь она точно будет востребована. Даже если текущий хостинг "испортится", всегда можно найти достойную замену.

Короче, "она согласныя", прикручивайте как в Песочнице. wink
1
19 script0l0g 29.05.2020 • 09:33
Ну ты сам напросился.))
В общем, прикрутил загрузчик и на главный, также только "для членов профсоюза".)
Текстовку поправлю, если "не-нра", особо извращаться не стал, взял из баннера.
1
16 script0l0g 27.05.2020 • 18:00
Дополнил статью описанием внешнего загрузчика.
2
4 Бармалей 27.05.2020 • 03:29
круть! thumb 
я как-то про дуанлоадную кнопку и не подумал, так совсем классно получилось!

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

при этом в отдельной вкладке - всё норм, иначе я бы его и не советовал..)
и в фоксе52 и 360ее9 - всё отлично, работает как заявлено, а в старом утюге хоть ты тресни.. sad 
главное - никаких ошибок или ахтунгов про безоп не выдаёт, так и не понял, чего ему не хватает..
флэша там нет, сам фрейм открывается и загрузка работает даже на древнем ие8, поэтому вообще странно..

в принципе - пофиг, я и в другом арбузе могу работать, но есть предложение - прикрути ещё и вторую комбинацию, скажем ктрл+альт, на вызов фрейма в отдельной всплывашке или в окне/вкладке..
0
6 Слесарь 27.05.2020 • 07:00
Поддержу про отдельное окно, удобно если большое чего-то грузить, можно не привязываться к странице сайта и не ждать окончания загрузки. Правда, у меня в "китайце" и в окне тоже не работает копирование всех ссылок, но это уже явно связано с настройкой браузера, буду разбираться.
0
9 script0l0g 27.05.2020 • 07:29
Чуть раньше сказал, попробуйте флэш разрешить и для наших сайтов и для wdho.
3
8 script0l0g 27.05.2020 • 07:26
Сделал ALT+CTRL+ПКМ = открывать ту же самую страницу загрузчика в окне.
Теоретически, прикрутил выспывашкой, но в хромых (скорее всего) будет открывать в новой вкладке, от настроек зависит.
Кстати, в старой лисе всё норм и никаких заморочек с фреймом нет, рекомендую.)
0
10 Бармалей 27.05.2020 • 08:05
нормально получилось, плюсанул..)
про всплывашку - да, есть такое, в утюге у меня открывает во вкладке, в лисе - в окошке, как и положено..

про флэш - хз, попробовал разрешить, но чё-та всё-равно "не алё"..(
0
14 script0l0g 27.05.2020 • 08:55
Может, и у тебя что-то конфликтует, нет?
Тут решение проблемы с флэшем товарищ описал, посмотри внимательнее, не должен 49-й косячить…
Сам ещё не проверял на нём, доберусь до второй машины под ХР, посмотрю.
2
1 Бармалей 25.05.2020 • 14:18
первым буду..)
тут на руборде наводка попалась на русский файлообменник - //wdho.ru.. потыкал немножко, ничо так..
из вкусностей - 160 (!) гигов на фри-акке, без рекламы, прямые ссылки в разных форматах сразу..
есть у них и своя формочка для сайтов, можно попробовать прикрутить как альтернативу флэшу..
правда, там не получится, наверное, всё в одну помойку лить или по сайтам, но как вариант..

я к тому, шо у нас в форме загрузок кроме депозита всё только руками, можно добавить ембед ещё и к полю "файлообменник" - необязательно, понятно, но как вариант.. единственный минус - на халявном акке те же 90 дней с момента последнего скачивания (как и на депозите), а про "вечное хранение" речи нет..

и ещё - я бы поискал возможность прикрутки загрузки на все зеркала, наверняка ведь там есть отдельные формы.. т.е. юзер залогинивается (или просто заходит) в такую форму прямо от нас, грузит, а потом просто линк вставляет..
0
2 script0l0g 25.05.2020 • 16:02
По wdho.ru – надо посмотреть, если что – я попробую в Песочнице, отпишусь как и что.)
По кнопкам в форме загрузок – хорошая мысль, можно хотя бы просто линки на облака добавить.
4
3 script0l0g 26.05.2020 • 18:17
Посмотрел, как обещал. Прикрутил wdho как альтернативу к сайтовому линку на загрузки (в шапке).
Вызов по ALT+ПКМ, подсказка присутствует, стили и прочие украшательства пока в patch.css.

Пока сделал только в Песочнице, на главном не стал. Заодно подправил все* скрипты.
На твоих сайтах тоже прикрутил, уж извини, без спросу, хотелось "на живом" потестить… biggrin
* лучше перегрузить с КА+логобутон, чтобы заодно и стили подхватились.

Если всё будет хорошо, потом сделаю правку в этой статье + в статье по интерфейсу.
0
5 Слесарь 27.05.2020 • 06:55
Спасибо, работает фрейм. Проверял в 360ЕЕ12 на сайте "Включить ПКМ".
Только почему-то не хочет отдавать ссылки (кнопка "копировать все"), неважно сколько загружено, один или несколько. Приходится поштучно копировать каждую по ПКМ на ссылке.

Может это как-то связано с настройками браузера, не разбирался пока.
1
7 script0l0g 27.05.2020 • 07:21
Вообще говоря, я не в курсе, зачем они так сделали, но эта ссылка-кнопка сделана на флэше.
Поэтому, чтобы она работала, надо в настройках браузера для этого сайта флэш разрешить.
2
11 Бармалей 27.05.2020 • 08:14
о как! а в 49-м утюге оно и без разрешения* показывает, обычным алертом про копирование..
* у меня в утюге флэш включен в режиме "находить контент", видимо, поэтому и не столкнулся сразу..
2
12 Слесарь 27.05.2020 • 08:46
Разрешал, пробовал, всё равно не пашет, собака!
Потом нашёл "гада" - у меня ещё vlc-plugin включен был, он и перехватывал весь флэш, выключил в настройках - и всё поехало! :)

Т.е. мало сам флэш разрешить, надо ещё и конфликтные плагины убрать. Можно так: только для конкретных сайтов разрешить флэш, но vlc и похожие надо точно выключать.
0
13 script0l0g 27.05.2020 • 08:51
…Короче, товарищи красноармейцы, забейте вы уже на этих хромых, фокс рулит! biggrin 
Если серьёзно – да, из-за конфликта плагинов может такое быть, спасибо за сигнал, потом отмечу в мануале.
0
15 Слесарь 27.05.2020 • 09:15
Из-за этого, кстати, не работает и штатный депозитовский загрузчик, сейчас специально проверил на этом сайте и на "вкл-пкм", у меня вместо родного флэш-загрузчика в комментариях показывало окошко vlc-плейера. :)
close