Кеш Varnish в WHM с обратным прокси-сервером nginx [закрыто]

У нас есть рабочий сервер с последней версией cpanel «96.0 (сборка 8)», на котором работает nginx с включенным обратным прокси-сервером. См. Прилагаемый снимок экрана netstat для получения подробной информации. Этот сервер в настоящее время находится в разработке, и у нас есть два основных веб-сайта: magento2 и wordpress. Для улучшения предпочтительности веб-сайта magento мы начали исследования и разработки в области подготовки magento 2 и включили кеширование лака.

enter image description here

Наш план состоял в том, чтобы реализовать magento2 с кешем varnish, мы установили его и настроили magento соответствующим образом. Конфигурация Varnish default.vcl выполняется в соответствии со стандартами magento2. После реализации сценария и тестирования заголовков лака нет. Кто-нибудь включил лак на сервере cpanel nginx с обратным проксированием?

enter image description here

0
задан 31 May 2021 в 10:06
1 ответ

На основании вывода netstat я вижу, что 2 порта прослушивания были открыты для varnishd :

  • порт 8443
  • порт 6081

Они настраиваются с помощью параметров времени выполнения -a .

Эта настройка довольно распространена и обычно относится к порту прослушивания HTTP и порту прослушивания PROXY .

Порт 6081

Порт 6081 обычно является портом HTTP , даже если он настроен с использованием нестандартного номера порта.

Что касается параметров времени выполнения, он обычно настраивается следующим образом:

-a :6081

Или иногда даже следующим образом:

-a :6081,HTTP

В этом случае Varnish, вероятно, будет находиться за прокси-сервером Nginx.

Для стандартного HTTP Nginx потребуется прокси-сервер для Varnish через порт 6081 .

Порт 8443

Порт 8443 обычно настраивается для соединений с использованием протокола PROXY .

Условие состоит в том, что узел, который находится перед Varnish, на самом деле говорит ПРОКСИ.

С точки зрения параметров времени выполнения это будет выглядеть так:

-a :8443,PROXY

Если я не ошибаюсь, версия Nginx с открытым исходным кодом не поддерживает обратное проксирование на другой узел с использованием протокола PROXY.

Использование правильных портов

На основе вывода netstat Nginx прослушивает порты 443 и 80 , то есть HTTPS ] и HTTP .

Служба httpd (это Apache) работает на портах 444 для HTTPS и 81 для HTTP.

Цель состоит в том, чтобы направлять трафик HTTP и HTTPS от Nginx к Varnish и от Varnish к Apache.

Это цепочка:

HTTPS -> NGINX (port 443)  --> Varnish (port 6081) --> Apache (port 81)
                               ^
                               | 
HTTP  -> NGINX (port 80)   ----+

Конфигурация Magento для Varnish

На скриншоте вы использовали порт 8443 в качестве внутреннего порта. Это не так. Apache прослушивает порт 81 для HTTP-трафика, этот порт должен быть вашим внутренним портом.

1
ответ дан 28 July 2021 в 14:06

Теги

Похожие вопросы