Основные HTTP заголовки
Небольшая заметка для себя. Установка HTTP заголовков и статус кодов на PHP с помощью функции header().
Все ок, нормальная страница:
1 |
header('HTTP/1.1 200 OK'); |
Страница не найдена:
1 |
header('HTTP/1.1 404 Not Found'); |
Доступ запрещен:
1 |
header('HTTP/1.1 403 Forbidden'); |
Указывает, что страница была перемещена на новый постоянный адрес (полезно для поисковиков при склейке доменов):
1 |
header('HTTP/1.1 301 Moved Permanently'); |
Внутренняя ошибка сервера:
1 |
header('HTTP/1.1 500 Internal Server Error'); |
Перенаправление по указанному адресу:
1 |
header('Location: http://www.example.org/'); |
Перенаправление с задержкой:
1 2 |
header('Refresh: 10; url=http://www.example.org/'); print 'You will be redirected in 10 seconds'; |
Переписать заголовок X-Powered-By указывающий на то, чем сгенерирована страница:
1 2 |
header('X-Powered-By: PHP/4.4.0'); header('X-Powered-By: Brain/0.6b'); |
Указывает на язык содержимого:
1 |
header('Content-language: en'); |
Дата последнего изменения содержимого, используется кэшом браузера:
1 2 |
$time = time() - 60; // or filemtime($fn), etc header('Last-Modified: '.gmdate('D, d M Y H:i:s', $time).' GMT'); |
Показывает, что документ не изменился с последнего запроса (контент не возвращается):
1 |
header('HTTP/1.1 304 Not Modified'); |
Устанавливает размер содержимого в байтах, так же используется кэшом:
1 |
header('Content-Length: 1234'); |
Заголовки для скачивания файла:
1 2 3 4 5 |
header('Content-Type: application/octet-stream'); header('Content-Disposition: attachment; filename="example.zip"'); header('Content-Transfer-Encoding: binary'); // load the file to send: readfile('example.zip'); |
Отключение кэша:
1 2 3 |
header('Cache-Control: no-cache, no-store, max-age=0, must-revalidate'); header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); // Date in the past header('Pragma: no-cache'); |
Установка MIME типа содержимому:
1 2 3 4 5 6 7 8 |
header('Content-Type: text/html; charset=iso-8859-1'); header('Content-Type: text/html; charset=utf-8'); header('Content-Type: text/plain'); // plain text file header('Content-Type: image/jpeg'); // JPG picture header('Content-Type: application/zip'); // ZIP file header('Content-Type: application/pdf'); // PDF file header('Content-Type: audio/mpeg'); // Audio MPEG (MP3,...) file header('Content-Type: application/x-shockwave-flash'); // Flash animation |
Запрос авторизации:
1 2 3 4 |
header('HTTP/1.1 401 Unauthorized'); header('WWW-Authenticate: Basic realm="Top Secret"'); print 'Text that will be displayed if the user hits cancel or '; print 'enters wrong login data'; |
ноября 10, 2012 Суббота at 1:01 пп
