HTTP заголовки ответа (сервера) - как их отправить, получить или удалить на PHP
HTTP заголовки очень важны для обмена информацией между браузером и сервером. Они бывают двух типов – заголовки запроса и заголовки ответа. В этой статье рассматриваются заголовки ответа.
Как отправить HTTP заголовки ответа
Так как заголовки ответа посылаются сервером, необходимо использовать средства языка программирования, например, средства PHP. В нем существуют специальные функции для работы с заголовками. Для отправки заголовка – функция header.
Отправлять заголовки можно только в том случае, если еще не отправлялись никакие данные. Перед вызовом это функции не должно быть никаких HTML-тегов, пустых строк и т.п., в том числе и во включаемых файлах. То есть сначала отправляются заголовки, а потом сами данные.
Примеры отправки заголовков на PHP в браузер:
header('HTTP/1.1 404 Not Found');
header('Status: 404 Not Found');
header('Location: https:// example.com');
Как получить HTTP заголовки ответа
Для этого есть следующие функции:
- get_headers - возвращает все заголовки из ответа сервера на HTTP-запрос;
- apache_response_headers - возвращает список всех HTTP-заголовков ответа Apache;
- http_response_code - получает или устанавливает код ответа HTTP;
- headers_list - возвращает список переданных заголовков (или готовых к отправке).
Еще можно использовать библиотеку CURL. Как получить заголовки ответа при помощи CURL? Пример:
if ($curl = curl_init('https://example.com')) {
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_NOBODY, true);
curl_setopt($curl, CURLOPT_HEADER, true);
$out = curl_exec($curl);
echo $out;
curl_close($curl);
}
Как удалить HTTP заголовки ответа
Удалить заголовки можно при помощи специальной функции - header_remove. Сначала необходимо проверить, были ли посланы заголовки:
if (!headers_sent()) {
header_remove('Content-Type');
}
Как видно из статьи, работать с HTTP заголовками ответа на стороне сервера очень просто.
Последние статьи
- 09.07.22ИТ / Разное Конвертация офисных файлов DOC, DOCX, DOCM, RTF в форматы DOCX, DOCM, DOC, RTF, PDF, HTML, XML, TXT без потерь и изменения разметки
- 07.07.22ИТ / Безопасность Как защитить исходный код PHP, JS, HTML, CSS - обфускация, минимизация, сжатие и шифрование
- 06.07.22ИТ / Безопасность Подключение не защищено, проблема с Lets Encrypt - как исправить истекший 30.09.2021 DST Root CA X3, удалить его вручную и установить ISRG Root X1. Пример на MS Windows 7
- 08.07.21ИТ / Разное Как бесплатно сделать перевод для сайта без API, перевод документов в Google Translate
- 06.07.21ИТ / Разное Как сделать кнопку подписки на сайте, базу подписчиков и автоматическую рассылку