$fastcgi_path_info

Переменная $fastcgi_path_info содержит дополнительную информацию о пути, которая следует за именем скрипта в запросе FastCGI. — NGINX Core (HTTP)

$fastcgi_path_info NGINX Core (HTTP)

Описание

Переменная $fastcgi_path_info используется в NGINX при взаимодействии с приложениями FastCGI. Она предоставляет дополнительную информацию о пути, которая может идти после имени скрипта в URL. Это значение особенно важно при работе с RESTful APIs или веб‑приложениями, которым нужно передавать части URL бэкенд‑приложению для обработки. Например, если выполняется запрос к /api/users/123, то '123' будет считаться path info и будет возвращено как значение переменной $fastcgi_path_info. Эта переменная в первую очередь устанавливается при использовании конфигурации FastCGI в серверном блоке NGINX, конкретно при обработке запросов к скриптам. Она позволяет NGINX корректно сопоставлять входящие запросы с соответствующим приложением FastCGI, обеспечивая более гибкую маршрутизацию и интеграцию с различными веб‑фреймворками, которые могут полагаться на разбор этой path info для своей работы. Важно отметить, что если в URL нет дополнительных сегментов пути после имени скрипта, $fastcgi_path_info будет пустой. В типичном сценарии, при определении FastCGI location блока в NGINX вы указываете путь к FastCGI-скрипту, одновременно позволяя NGINX обрабатывать дополнительную информацию пути через эту переменную, которую затем могут использовать указанные веб‑приложения.

Пример конфига

location ~ \.php$ {
    include fastcgi_params;
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_index index.php;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_param PATH_INFO $fastcgi_path_info;
}

Подсистема

http

Кэшируется

Нет

Контексты

http, server, location, if

Убедитесь, что вы определили PATH_INFO в настройках fastcgi_param, чтобы NGINX правильно передавал его на бэкенд.

Игнорирование установки SCRIPT_FILENAME может привести к ошибкам, поскольку пути должны быть полностью разрешены для FastCGI-скриптов.

Не все приложения FastCGI корректно обрабатывают информацию о пути, поэтому вам следует протестировать своё приложение, чтобы убедиться, что оно работает как ожидается.