headタグ環境にはさまざまなタグによってドキュメントに対して情報を付加することができますが、その中でもmetaタグは汎用的に使うことができる重要なタグです。
metaタグはドキュメントの作者、キーワードなどのメタデータを表現します。まず書式について次に示します。
たとえばWebページの作者名を示すのであれば、次のように表記します。
<meta name="Author" content="Kenshi Muto">
また、世界中のWebページを探索して自動的にデータベース化している検索エンジンロボットの中にはmetaタグのキーワードを見ているものがあります。これに「hobby」のようなキーワードで登録させるようにするには、次のように表記します。
<meta name="keywords" content="hobby">
http-equivアトリビュートを使うと、Webサーバーでは表現しきれないページ情報をブラウザに送ることができます。
たとえばファイルがShiftJISコードで記述されていることを明示するには、次のように表記します。
<meta http-equiv="Content-Type" content="text/html; charset=shift_jis">
もしEUC-JPならばtext/html; charset=euc-jp、JISならばtext/html; charset=iso-2022-jpとなります。実際のファイルの文字コードとこの記述が正しく合致していることを確認しましょう。ShiftJISで書いてあるのにiso-2022-jpと宣言してしまうと、ブラウザ上では文字化けしてしまうはずです13。
対応しているブラウザならば、Refreshを使って次の書式で一定時間の後に別のURIに飛ばすようにすることもできます。
<meta http-equiv="Refresh" content="待ち秒数; URL='飛び先URI'">
Webサーバーとブラウザとの間で情報をやり取りする際には、HTTP(Hypertext Transfer Protocol)/1.0またはその改良版のHTTP/1.1というプロトコルが使われます。プロトコルというのは、別のプログラム間やネットワーク間で情報をやり取りする際のとり決めです。このとり決めに従うことで、お互いの間で正しく情報を行き来させることができます。HTTP/1.0の仕様はRFC(Request For Comments)というドキュメントの1945番、HTTP/1.1の仕様は2068番に記載されています。最近のブラウザのほとんどはHTTP/1.1を解釈しますが、古いブラウザやWebサーバーの場合にはHTTP/1.0しか解釈しないこともあります。
http-equivに表記する情報は、ブラウザにHTTPの生データとして渡されます。紹介したほかにどのような情報が送れるかについてはHTTP/1.0やHTTP/1.1のRFCを参照してください。