META-теги (или
как еще
говорят, META-определители)
- служебные
элементы
заголовков web-страничек.
Они никаким
образом не
влияют на
содержимое web-странички
и ее
отображение
в браузере (за
исключением
неправильной
установки
кодировки).
Поэтому
многие web-мастера
эти теги
вообще не
используют,
но это не
совсем
правильно.
Итак, для чего
же нужны
различные META-теги
и какую они
несут
информацию?
Все META-теги
записываются
в заголовке web-странички,
то есть между
тегами <HEAD> и </HEAD>
и желательно
записывать META-теги
после тегов <TITLE>
и </TITLE>.
Существует 2
типа META-тегов,
различающихся
атрибутами и
соответственно
назначением:
- <META HTTP-EQUIV="имя" CONTENT="содержимое">
- <META NAME="имя" CONTENT="содержимое">
Рассмотрим
сначала META-теги,
использующие
атрибут HTTP-EQUIV.
META-теги с
атрибутом HTTP-EQUIV
эквивалентны
HTTP-заголовкам.
Обычно они
управляют
действиями
браузеров и
могут быть
использованы
для
совершенствования
информации,
выдаваемой
обычными
заголовками
с сервера.
Теги такой
формы могут
дать такой же
эффект, что и HTTP-заголовки,
и на
некоторых
серверах
автоматически
могут быть
переведены в
настоящие HTTP-заголовки.
HTTP-заголовки
могут быть
сгенерированы
с помощью CGI-скриптов.
Это
позволяют
сделать
серверы Apache и CERN. В
других
серверах
могут
использоваться
другие
механизмы
генерирования
заголовков.
Некоторые
генерируемые
сервером
поля
заголовков
не могут быть
подменены
значениями
из META-тагов (в
частности Date),
другие
подменяются
только при
ненормальном
статус-коде
(<>200). Когда
заголовок не
понятен, то
значение HTTP-заголовка
превалирует
над
значением META-тагов.
Возможные
значения
атрибута HTTP-EQUIV (вместо
имя):
Refresh
Значение
атрибута CONTENT
число,
определяющее
время в
секундах,
после
которого,
браузер
автоматически
произведет
обновление
документа (это
аналогично
нажатию
кнопки Reload /
Обновить в
браузере). Это
приведет к
тому, что
страница с
таким meta-тегом
будет
автоматически
обновляться
через
указанное
количество
секунд:
<META HTTP-EQUIV="Refresh" Content="3">
Используя
дополнительный
параметр (URL) в
атрибуте CONTENT, Вы
можете
создать, так
называемый "редирект"
или "перенаправление"
пользователя
на другой
адрес:
<META HTTP-EQUIV="Refresh" Content="3; URL=http://webholm.ru">
Включение
такого тега
обеспечит
автоматический
переход
браузера на
страницу http://webholm.ru
через 3
секунды.
Редирект
применяется
в случае, если
Ваш сайт "переехал"
на другой
хост и сменил
адрес. Тогда
на сервере со
старым
адресом Вы
оставляете,
как правило, в
файле index.htm или index.html
предупреждение
о "переезде"
Вашего сайта,
а в заголовке
используете
вышеприведенный
meta-тег. Иногда,
эта
конструкция
находит
применение,
когда
необходимо
через
некоторое
время
перенаправить
пользователя
с главной
страницы
сайта на
страницу
новостей.
Content-Type
Указание
типа
документа.
Может быть
расширено
указанием
кодировки
страницы (charset).
Если указать
charset в
содержании META-тега,
то браузер
выведет web-страницу
в кодировке,
заданной в charset:
<META HTTP-EQUIV="Content-type" CONTENT="text/html; charset=KOI8-R">
Использовать
возможность
"жесткой"
установки
кодировки
следует
крайне
осторожно,
поскольку,
если в META-теге
задана одна
кодировка, а
страничка
находится в
другой
кодировке,
бывает очень
сложно
перевести
такую web-страничку
в читаемый
вид.
А как
такое вообще
может
произойти?
Например, Вы
создаете
страничку в
Блокноте, т.е.
в кодировке Windows
и указываете
в META-теге эту
кодировку: windows-1251,
тестируете -
все
нормально, но
на сервере,
где
располагается
Ваш сайт, все
документы
находятся в
кодировке KOI8-R и
автоматически
перекодируются
в эту
кодировку
при
копировании
на сервер
через
протокол FTP. А в
META-теге то
указана
кодировка Windows!
Если же http-сервер
поддерживает
функцию
автоматического
изменения
кодировки в
зависимости
от настроек
браузера, то
использовать
данный META-тег
вообще не
следует, а
файлы "заливать"
(копировать
на сервер
через FTP) в
кодировке,
указанной
при
регистрации
или в FAQ для
данного
хостинга.
Expires
Определяет
дату "устаревания"
страницы для
протокола HTTP.
Для браузера
это выглядит
следующим
образом: если
указанная
дата прошла,
то
содержимое
странички
загружается
с сервера, а
данные из
кеша
браузера не
используются.
Зачастую в
данной
директиве
указывают
заведомо
устаревшую
дату, чтобы
избежа