Сервер Кэширования HTTP, который поддерживает POST

Похож на Ваш веб-сайт, настроен, чтобы только принять запросы на имя; необходимо взглянуть на конфигурацию IIS.

Веб-сервис работает на веб-сайте по умолчанию или на пользовательском?
Как привязка сайта настроена?

1
задан 12 April 2012 в 21:53
2 ответа

Основная идея кэширования состоит в том, чтобы предоставлять одинаковые ответы на один и тот же запрос, не запрашивая серверную систему. Проблема с запросами POST заключается в том, что вам нужно проверить тело, чтобы решить, когда два запроса совпадают. Лучшее решение - перейти с POST на GET.

Если это не применимо, вы можете попробовать прокси-модуль Nginx со следующей настройкой (см. Необходимое ограничение размера тела):

location @apache_backend {
    ...
    proxy_cache_methods   POST;
    proxy_cache_key       "$uri|$request_body";
    client_max_body_size  1k;
}
1
ответ дан 3 December 2019 в 21:50

Вы отметили свой вопрос с помощью , но, очевидно, вы не знаете о директивах proxy_cache_methods и proxy_cache_key , который также должен позволить вам проксировать ответы POST при условии, что ваш сервер использует заголовки управления кешем для ответов POST.

Идея состоит в том, чтобы включить метод POST с proxy_cache_methods и найти подходящий строка для proxy_cache_key . Значение по умолчанию $ scheme $ proxy_host $ request_uri; не будет работать так, как вы подозреваете, но вы можете выбрать из большого списка переменных Nginx , чтобы получить то, что вам подходит. .

1
ответ дан 3 December 2019 в 21:50

Теги

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