Cloudflare Intermitten 521 Ошибка перед Digital Ocean и Wordpress Multisite

Я продолжаю получать прерывистый код ошибки 521 на своем веб-сайте. Вот небольшое пояснение об архитектуре. У меня есть многосайтовый сервер WordPress для обслуживания клиентских сайтов. Веб-сервер — NGINX с PHP-FPM. У каждого сайта есть свой домен, поэтому для каждого клиентского сайта у меня есть одна учетная запись Cloudflare, которая подключается к WordPress.

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

До ошибок, в основном, конфигурация Cloudflare имеет 1) имя с сайта на многосайтовый IP-адрес 2) включена гибкая ssl 3) включена перезапись https и перенаправление https 4) 1 правило страницы для перенаправления .domain на www.domain . 5) 1 правило страницы для обхода кэша для wp-admin 6) 1 правило страницы для кэширования всего контента в wp-content/

Но вдруг ошибка 521 происходит на всех микросайтах. Что я пытался исправить, так это 1) установить SSL в мультисайте, установить домен CNAME, установить HTTPS на Full (из Flexibe). 2) тест включения режима разработки

В какой-то степени проблема все еще сохраняется, поэтому я попробовал закрутить один из сайтов и посмотреть журнал в nginx.

введите здесь описание изображения

Выше пример журнала. В первом разделе, слева, я пытался выполнить curl на основе метки времени, а справа — журнал nginx. В 155xxxxxxx033 у меня есть 521 Origin Down но записи справа нет. Только предыдущий 155xxxxxxxx00994 и следующий 155xxxxxx8901. Также для этого одного микросайта я удаляю все правила страницы.

введите здесь описание изображения

После этого я попробовал еще раз, изменив конфигурацию HTTPS с гибкой на полную. Все такой же.

Теперь я застрял в том, где исследовать дальше и какую конфигурацию мне не хватает. Очень ценю помощь и идеи.


person Petra Barus    schedule 30.05.2019    source источник


Ответы (2)


Вероятно, это fail2ban, блокирующий IP-адреса Cloudflare. Следуйте официальному руководству Cloudflare здесь, чтобы восстановить исходный IP-адрес посетителя. У меня была такая же проблема, и это решило для меня.

Вкратце,

  1. Установите mod_remoteip.
  2. Cloudflare отправляет IP-адрес посетителя в заголовке как CF-Connecting-IP. Зарегистрируйте это вместо IP-адреса Cloudflare.
  3. И добавьте диапазоны IP-адресов Cloudflare в качестве доверенных прокси-серверов в remoteip.conf.
person Ken    schedule 21.08.2019

У меня была эта проблема, и мне пришлось отключить джейлы/обнаружение вторжений IP-адреса fail2ban. Или добавьте IP-адреса Cloudflare в свой белый список:

https://www.cloudflare.com/ips/

person user2129024    schedule 27.07.2019