С Varnish, как отправить запрос во второй бэкэнд, если файл не найден сначала? - PullRequest
0 голосов
/ 05 ноября 2019

Мой новый сервер "company.io" имеет Varnish спереди и два бэкэнда со статическими файлами - один простой старый сервер и один экземпляр облака s3. Файлы хранятся с теми же именами и каталогами, но для имени S3 предваряется имя корзины. Бэкэнды отвечают, только если заголовок хоста совпадает с именем хоста бэкенда.
Например:

Мне нужно запросить прокси в «облаке», и, если он вернет 404, вернуться к «серверу». Теперь я делаю это со вторым прокси Nginx:

    location /img/ {
                    proxy_pass              http://south.s3.cloud.com/backet/img/;
                    proxy_intercept_errors  on;
                    error_page              404 = @proxy_to_server;
            }
            location @proxy_to_server {
                    proxy_pass              http://www.server.com;
            }

Могу ли я избавиться от промежуточного прокси и реализовать то же самое в Varnish?

...