[DigitalPoint] App for Cloudflare®

ПЛАГИН xF2 [DigitalPoint] App for Cloudflare® 1.8.7

Настраивайте и управляйте Cloudflare из XenForo.
  • Автор НетМеня
  • Дата создания
Cloudflare изменила результаты API для управления ботами, но только для платных планов. Это решает эту проблему.
  • Добавлена поддержка новых настроек Cloudflare: Скорость -> Оптимизация -> Оптимизация контента -> Шрифты Cloudflare
  • При использовании "Easy config" установите для параметра "Уровень безопасности" значение "Практически выключен" (ранее было установлено значение "Средний").
  • Простая настройка позволяет использовать шрифты Cloudflare

Переписал JavaScript, чтобы он был встроенным (не использовал jQuery), использовал HTTP-заголовок Sec-Fetch-Site и т.д.​


ВАЖНО для существующих пользователей: для использования новой функции требуется 1 дополнительное разрешение API. Вы можете перейти к своим токенам Cloudflare API, отредактировать имеющийся у вас токен и добавить следующее разрешение:
  • Account.Billing: Read
На данный момент у вас должно быть в общей сложности 19 разрешений для вашего токена API.
  • Добавлена проверка работоспособности, чтобы убедиться, что данные вложений существуют при использовании предварительно подписанных URL-адресов для вложений R2 (полезно в некоторых случаях при использовании XFMG).
  • Добавлена возможность использовать систему аутентификации токенов для вложений, хранящихся в R2 (требуется новое разрешение... смотрите выше). Это работает только для зон, которые не относятся к бесплатному уровню (именно поэтому требуется разрешение billion, чтобы проверить, включена ли зона в платный тарифный план или нет).
  • Обновление Chart.js до версии 4.4.0
  • Весь JavaScript был переписан как "родной" (не использует jQuery) в рамках подготовки к удалению jQuery в XenForo 2.3.
  • При использовании кэширования гостевой страницы больше не пытайтесь получить новый токен CSRF для пользователя с помощью быстрого синхронного AJAX-запроса (используя заголовок HTTP-запроса Sec-Fetch-Site [более современная замена токенов CSRF]).
Внесены довольно существенные внутренние изменения в систему кэширования гостевой страницы ... больше не нужно выполнять быстрый AJAX-запрос для получения токена CSRF для гостей. Вместо этого мы используем Sec-Fetch-Site заголовок HTTP-запроса, который теперь более или менее поддерживается всеми браузерами (токены CSRF на самом деле больше не нужны).

Я шел по пути попыток выполнить синхронный AJAX-запрос на родном JavaScript (переписывая для XF 2.3), а затем пытался справиться с кучей разовых ситуаций, когда XenForo вводит токены CSRF в определенные запросы GET, потому что они по какой-то причине используют GET для изменения состояния пользователя... просто становилось слишком запутанным и громоздким. И поскольку CSRF в наши дни больше не нужен, я решил выбрать более чистый и простой путь (который также ускорит работу сайтов). Просто используйте Sec-Fetch-Site вместо CSRF ... проблема решена. :)

Возможно, стоит проверить предположение о том, что XenForo устраняет CSRF в своем ядре: https://xenforo.com/community/threa...ion-cloudflare-full-html-page-caching.202315 /
  • Перенесли параметры Cloudflare с External service providers на их собственную страницу параметров
  • Новая опция (расширенная): показывать ошибки в данных вложения в журнале ошибок сервера
  • Добавьте проверку работоспособности при использовании R2 с предварительно указанными URL-адресами, и пользователям будет разрешено загружать аудио / видеоматериалы
  • Можно использовать R2 для хранения данных без того, чтобы сайт был доменом / зоной в Cloudflare
  • Внесены изменения в объект данных вложений XenForo для повышения эффективности (обычно XenForo проверяет, существует ли вложение, прежде чем выполнить дополнительный вызов для его фактического получения). Это сократит время вызова API для каждого просмотра вложения, потому что нам не нужно проверять, существует ли вложение (мы знаем, что оно уже существует, потому что у нас есть запись об этом в данных вложения).
  • Добавлена новая опция: Использовать предварительно указанные URL-адреса для вложений, хранящихся в R2 (позволяет просматривать вложения, хранящиеся в R2, непосредственно пользователю, а не вашему серверу, загружающему вложение для передачи его пользователю)
Особенно интересен URL-адрес, указанный пользователем... в системе удаленного хранения данных, такой как R2, ваш сервер проверяет разрешения пользователя, чтобы узнать, может ли пользователь что-либо просматривать, затем он вызывает API для извлечения файла / объекта и затем передает его пользователю.

Например, если у вас есть вложение размером 10 МБ, вашему серверу сначала необходимо загрузить 10 МБ, а затем он отправляет эти 10 МБ конечному пользователю (таким образом, для загрузки вложения из R2 требуется время, а общая пропускная способность вашего сервера составляет 20 МБ)... Ввод 10 МБ, затем вывод 10 МБ). При использовании предварительно подписанных URL-адресов ваш сервер проверяет разрешения, а затем, если у пользователя есть разрешение на просмотр вложения, пользователь перенаправляется на уникальный URL-адрес, срок действия которого истекает через 60 секунд для извлечения вложения. Это означает, что конечные пользователи быстрее просматривают вложения, а ваш сервер не тратит впустую пропускную способность, передавая их пользователю.

Предварительно подписанные URL, срок действия которых истекает и которые не могут быть изменены пользователями, выполняются с помощью криптографической подписи (отсюда и название "предварительно подписанные URL").
Версия 1.7.0.1 Исправлено при включении кэширования гостевой страницы :
- Исправлена ошибка при попытке включить кэширование гостевой страницы (заканчивается циклом). Требуется только в том случае, если у вас не включено кэширование гостевой страницы и вы хотите его включить.
  • Исправлена ошибка, из-за которой вы получали вызов функции-члена getBody() при исключении массива вместо предполагаемого HTTP-ответа, если вызов API дважды завершался неудачно (он автоматически выполняет повторную попытку, если он завершился неудачно один раз)
  • При использовании кэширования гостевой страницы отключите механизм очистки кэша от http-запроса (действие очистки кэша отправляется в систему заданий XenForo).
  • Показывать пропускную способность выхода при наведении курсора на R2 статистика работы класса A или класса B
  • Изменены настройки в соответствии с недавними изменениями панели мониторинга Cloudflare
  • Удалить параметр аутентификации для глобальных ключей API (в дальнейшем разрешать только токены API)

Реорганизация настроек перемещает настройки в разные категории и создает подразделы внутри категорий. Это следует за изменениями, внесенными Cloudflare на этой неделе, поэтому расположение настроек в дополнении совпадает с тем, где они находятся на панели мониторинга Cloudflare.
Пример:

Вложения

  • 1687876090692.png
    1687876090692.png
    397,7 КБ · Просмотры: 5
  • 1687876100761.png
    1687876100761.png
    277,1 КБ · Просмотры: 4
Назад
Верх Низ