Заголовок вывода сценария.
Как правило, вывод сценария интерпретируется сервером и посылается пользователю. Информация, позволяющая броузеру выяснить, какого типа файл идет к нему по сети, поступает до получения самого файла и называется заголовком. Поскольку сервер не может создать заголовок, сценарий сам должен обеспечивать отправку соответствующего заголовка. Таким образом, помимо собственно результатов обработки, сценарий должен поместить в выходной поток и корректный заголовок. Он состоит из строки состояния и затем полей ответа: общий заголовок (General-Header) и заголовок тела сообщения (Entity-Header), а также заголовок ответа (Response-Header).
Вывод начинается с маленького заголовка. Он содержит текстовые строки, в том же формате, как и в HTTP заголовке, и завершается пустой строкой (содержащей символ перевода строки). Любые строки заголовка, не являющиеся директивами сервера, посылаются непосредственно пользователю. В настоящий время, CG1 спецификация определяет три директивы сервера.
| Имя | Пояснение |
| Content-type | MIME-тип возвращаемого документа. |
| Location | Это поле используется в случае, когда необходимо указать серверу, что возвращается не сам документ, а ссылка на него. Тогда сервер передает пользователю указание на перенаправление запроса. |
| Status | Задает серверу НТТР строку-статус, которая будет послана клиенту. Формат: nnn xxxxx, где nnn - 3-х цифровой статус-код, и ххххх строка причины. |
Наиболее интересная информация содержится в строке состояния. Строка состояния имеет следующий формат: HTTP/version - версия, Status-Code - трехзначный код статуса идентифицирующий результат и Status-Phrase - текстовая фраза, поясняющая код. Код статуса используется броузером, а текстовая фраза предназначена для пользователя.
Первая цифра кода статуса предназначена для определения класса ответа.
Существует пять катеогрий, определяемых первой цифрой кода:
1) 1хх: пока не используется, зарезервирован для использования в будущем.
2) 2хх: успех - запрос был полностью получен, понят и принят к обработке
3) Зхх: перенаправление - пользователю следует предпринять дальнейшие действия для успешного выполнения запроса.
4) 4хх: ошибка пользователя - запрос не может быть успешно обработан. Если пользователь еще не завершил запрос на момент получения ответа с кодом 4хх, то он должен немедленно прекратить передачу данных серверу.
5) 5хх: ошибка Web-сервера - сервер не смог ответить на корректный запрос. Сервер посылает описание ошибочной ситуации и то, является ли это состояние временным или постоянным, в теле ответа.
Поясняющие текстовые фразы могут быть замещены любыми другими фразами, сохраняющими смысл и допускающимися протоколом.
В следующей таблице перечислены коды ответов HTTP.
| Код статуса | Значение |
| ок | |
| Успешная команда post | |
| Запрос принят | |
| Запрос get или HEAD выполнен | |
| Запрос выполнен но нет содержимого | |
| Ресурс обнаружен в нескольких местах | |
| Ресурс удален навсегда | |
| Ресурс отсутствует временно | |
| Ресурс был изменен | |
| Плохой запрос от клиента | |
| Неавторизованный запрос | |
| Необходима оплата за ресурс | |
| Доступ запрещен | |
| Ресурс не найден | |
| Метод не применим для данного ресурса | |
| Недопустимый тип ресурса | |
| Ресурс недоступен | |
| Внутренняя ошибка сервера | |
| Метод не выполнен | |
| Неисправный сценарий либо сервер перегружен | |
| Сервер недоступен/тайм-аут сценария | |
| Вторичный сценарий/тайм-аут сервера |
Директива Status позволяет CGI-сценарию вернуть сообщение о состоянии обработки. Если эта директива не задана, то сервер подразумевает 200 Ok.
Пример: