echo

Директива `echo` выводит указанную строку или данные в теле ответа.

Синтаксисecho string;
По умолчаниюnone
Контекстlocation, if in location
Аргументыany

Описание

Директива echo позволяет NGINX возвращать строки или данные напрямую клиенту в ответ на HTTP-запросы. Её можно использовать в различных контекстах, например в location или внутри if-блока в пределах location. Эта директива очень гибка и принимает любую строку в качестве аргумента для возврата клиенту. Она также может обрабатывать специальное форматирование, включая переменные и выражения, что делает её мощным инструментом для вывода настраиваемых сообщений или информации из конфигурации NGINX.

При выполнении директива echo отправляет указанную строку как часть тела HTTP-ответа. Директиву можно комбинировать с другими связанными с echo командами, такими как echo_sleep, echo_flush и echo_reset_timer, что позволяет реализовывать более сложное взаимодействие и управлять выводом. Например, echo_sleep может вводить задержки, а echo_flush — отправлять частичные ответы на разных этапах обработки.

Кроме того, поскольку echo чувствителен к контексту, его можно размещать внутри условных конструкций, чтобы динамически определять, что выводится, исходя из определённых параметров запроса или заголовков. Это делает echo не только простым механизмом вывода, но и частью более динамичной системы ответов.

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

location /greet {
    echo "Hello, welcome to NGINX!";
}

Убедитесь, что строка правильно заключена в кавычки, чтобы избежать синтаксических ошибок.

Будьте осторожны, чтобы не использовать echo таким образом, чтобы это конфликтовало с другими директивами обработки вывода, такими как return или rewrite.

Вывод и его обработка могут быть несовместимы с некоторыми настройками, такими как буферизация или параметры таймаута клиента.

← Ко всем директивам