У нас есть рабочий сервер с последней версией cpanel «96.0 (сборка 8)», на котором работает nginx с включенным обратным прокси-сервером. См. Прилагаемый снимок экрана netstat для получения подробной информации. Этот сервер в настоящее время находится в разработке, и у нас есть два основных веб-сайта: magento2 и wordpress. Для улучшения предпочтительности веб-сайта magento мы начали исследования и разработки в области подготовки magento 2 и включили кеширование лака.
Наш план состоял в том, чтобы реализовать magento2 с кешем varnish, мы установили его и настроили magento соответствующим образом. Конфигурация Varnish default.vcl выполняется в соответствии со стандартами magento2. После реализации сценария и тестирования заголовков лака нет. Кто-нибудь включил лак на сервере cpanel nginx с обратным проксированием?
На основании вывода netstat
я вижу, что 2 порта прослушивания были открыты для varnishd
:
8443
6081
Они настраиваются с помощью параметров времени выполнения -a
.
Эта настройка довольно распространена и обычно относится к порту прослушивания HTTP и порту прослушивания PROXY .
Порт 6081
обычно является портом HTTP , даже если он настроен с использованием нестандартного номера порта.
Что касается параметров времени выполнения, он обычно настраивается следующим образом:
-a :6081
Или иногда даже следующим образом:
-a :6081,HTTP
В этом случае Varnish, вероятно, будет находиться за прокси-сервером Nginx.
Для стандартного HTTP Nginx потребуется прокси-сервер для Varnish через порт 6081
.
Порт 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) ----+
На скриншоте вы использовали порт 8443
в качестве внутреннего порта. Это не так. Apache прослушивает порт 81
для HTTP-трафика, этот порт должен быть вашим внутренним портом.