cache_methods GET HEAD

Валентин Бартенев vbart at nginx.com
Wed May 27 14:08:11 UTC 2015


On Wednesday 27 May 2015 07:54:05 S.A.N wrote:
> > В новых версиях ничего не менялось в этом отношении.
> 
> В Nginx/1.9.1, с включенным кэшированием, на бекенд отправляется запрос HEAD
> методом.
> 
> Вот простой скрипт РНР.
> 
> <?php
> 
> header('Cache-Control: max-age=1000');
> header("X-Method: $_SERVER[REQUEST_METHOD]");
[..]

Тут вы просто выводите значение переменной окружения, а как вы ее настроили такое
там значение и будет.

Если у вас в конфигурации указано:

   fastcgi_param  REQUEST_METHOD     $request_method;

то будет передаваться значение переменной $request_method, а оно всегда содержит
оригинальный метод запроса.

Cтрого говоря в случае протокола FastCGI такого понятия, как запрос "HEAD методом"
не существует.  Протокол FastCGI ничего не знает о HTTP методах запроса.  И ваше
приложение может не разбираться в HTTP методах и все методы обрабатывать одинаково
и это будет задача сервера отбросить тело в случае HEAD запроса.

--
Валентин Бартенев


Подробная информация о списке рассылки nginx-ru