У меня есть установка, где у меня есть Лак, слушающий на Порте 80 позади Apache на Порте 8080, в то время как я намереваюсь иметь Nginx на 8 081. Панель управления моих vp поддерживает только Apache, но я хочу протестировать один из сайтов, которые я разместил на своем VPS на Nginx, и так как Лак уже находится на 80, у меня не может быть Nginx на том же порте.
Я не хочу избавляться от Apache, полностью вызывают, мне все еще нужен он для доступа к панели управления моих vp, Sentora, чтобы быть точным, где Apache находится на 8 080. В вопросе, который задают здесь, OP хотел иметь два различных домена на другом IP на просто Apache, таким образом, он действительно не помогает.
Кроме того, я читал где-нибудь об использовании server.port
директива в моем vcl, но я не уверен, как пойти об этом. Вот что часть моего default.vcl
похож:
backend default {
.host = "127.0.0.1";
.port = "8080";
}
P.S.: Я еще не установил Nginx.
Здесь вы хотите настроить дополнительный бэкэнд в Varnish и направить на него некоторые запросы.
Сначала добавьте новый backend для Nginx:
backend nginx {
.host = "127.0.0.1";
.port = "8081";
}
Затем вы можете направить на него некоторые запросы. Обычно это делается в подпрограмме vcl_recv
. Например, если доступ к Sentora осуществляется через домен sentora.example.org
:
sub vcl_recv {
if (req.http.host ~ "(?i)^sentora.example.org$") {
# Route requests to sentora.example.org to the old Apache backend.
set req.backend = default;
} else {
# Everything else to nginx.
set req.backend = nginx;
}
}
Дополнительные примеры см. В Расширенная конфигурация серверной части . Также есть много примеров в документации Varnish Configuration Language .