web上でサイトを見まわっていると時に「404 Not Found」などのエラーが出る事があります。
これはHTMLの規格上設定されたエラー番号(正確にはステータス・コードと言います)なのですが、それぞれ番号によって意味が違ってきます。
■ HTMLにおけるエラーの種類
・403
アクセス権限のないフォルダへのアクセスの際に表示
・404
ページ自体が存在しない場合に表示
・500
CGI等のプログラムのエラー等が起こった際に表示
・503
サーバーアクセス過多状態の際に表示
などなど、他にもステータス・コードは沢山存在しますが、普段目に付くのはだいたい上記のものあたりでしょう。
さて、おしゃれなサイトなんかは「404 Not Found」さえもおしゃれなページが表示されたりする事があります。
これは、「エラー404を踏んだユーザーを指定したページに飛ばす」という処理がなされているからなんですね。
この処理を可能にしているのは「.htaccess」というファイルに書かれているコードです。
■ .htaccessとは
.htaccessとはウェブサーバーがディレクトリごとの動作を制御する為のファイルです。
制御情報は.htaccessの存在するディレクトリと、サブディレクトリ全てに適用されます。
制御の具体的な例としては、IPやドメインによるアクセス制御や、CGIの設定等です。
本筋に戻ります。404エラーを踏んだユーザーを指定のページに飛ばすという事は以下のコードを書いた.htaccessファイルを設置すれば実現できます。
ErrorDocument 404 http://www.example.com/
404の数字を他のステータス・コードに変更すればそれぞれのステータス・コードごとに表示するページを変更する事ができます。
例では存在しないページを訪れた時、ユーザーはhttp://www.example.com/に接続する事になりますね。
ちなみに、.htaccessファイルはWindows上では作る事ができないと思います。先頭に”.”(ピリオド)の付く名前のファイルを作ろうとすると「名前を入力してください」とシステムから警告が出されます。
この先頭に”.”を付けるという形式はもともとUnix系のシステムで隠しファイルにする為の文化なのです。
なので、Windows上ではまず適当な名前を付けて、FTPソフトでアップロードした後に改めて”.htaccess”と名付けてやるのがいいと思います。
基本的に、”.htaccess”はウェブサーバーのウェブ公開ディレクトリのルートにおいてやれば動いてくれます。
fdi7iutitidrd5uyi9ifiuiu