Эти функции позволяют отсылать данные браузеру клиента непосредственно на уровне протокола HTTP.
headers_sent
Проверка отсылки заголовков
boolean headers sent (void)
Возвращает TRUE, если заголовки HTTP уже были отосланы; иначе — FALSE.
См. также header().
header
Посылка простого заголовка HTTP
int header (string string)
Функция используется в начале сценария HTML (до вывода прочего текста) для низкоуровневой посылки строк заголовков по протоколу HTTP. Спецификация заголовков HTTP 1.1 (http://www.w3.org/ Г Protocols/rfc2616/rfc2616) определяет их формат и назначение.
Не забывайте, что вывод может происходить также из вложенных файлов, если они были подключены директивой include() или с помощью параметра auto_prepend.
Наиболее общие варианты использования заголовков представлены ниже.
Переадресация. Если браузер получает заюлонок Location, то он пытается загрузить страницу с нового указанного адреса (сервер Apache при этом также получает код статуса REDIRECT).
<?php
header
("Location: http://www.p.net/new.php");
echo "Эта страница была перенесена
в другое место. Обновите ссылки.": exit;>
Выполнение команды HTTP/ (регистр не важен).
header ("HTTP/1.0 404 Not Found").
// страница не найдена
header ("HTTP/1.0 403 Forbidden"):
// доступ к этому адресу запрещен
Управление кэшированием (на браузере или прокси-сервере). Следующие четыре команды запрещают кэширование различными способами.
header ("Expires: Mon. 26 Jul
1988 05:00:00 GMT").
// Уже устаоело header
("Last-Modified- " . gmdateC'D. d M Y H:vs")
" GMT"):
// только что модифицировано
header ("Cache-Control: no-cache,
must-revalidate").
// HTTP/1.1 header ("Pragma: no-cache"):
// HTTP/1.0
См. также headers_sent().
HTTP-аутентификация в PHP
Осуществлять аутентификацию HTTP можно, только если PHP установлен как модуль web-сервера Apache. Для версии CGI и на других серверах (например, IIS) это невозможно. Аутентификация происходит путем посылки (с помощью функции Heatier()) заголовка Authentication Required, что заставляет браузер вывести окно для ввода имени пользователя и его пароля. После того как пользователь вводит эти данные, браузер заново запрашивает страницу, передавая серверу переменные $PHP_AUTH_USER, $PHP_AUTH_PW и $PHP_AUTH_TYPE, соответственно со значениями имени пользователя, его пароля и метода аутентификации. В настоящее время поддерживается только аутентификация простого типа «Basic».