知らないうちにfavicon.icoにアクセスされる
Goで自作ルータをテストしていたときのこと...
とりあえずルート("/"
)だけ処理できるようにだけして動かしてみようと思い、ルーティング用のプログラムを作成しブラウザからlocalhostにアクセスして正しいルーティングが行えるかをテストしていた。
アクセスしてみるとエラーが発生。panicで落ちていた。
スライスの範囲外を参照しているらしいが、"/"へのアクセスに対しては正しく動作するように書いたはずだが。
おかしいと思い、リクエストを調べてみると...
どうやらfavicon.ico
というパスにアクセスされたことが原因らしい。
favicon.icoとは?
favicon(ファビコン)は、ウェブサイトのシンボルマーク・イメージとして、ウェブサイト運営者がウェブサイトやウェブページに配置するアイコンの俗称である。favorite icon(フェイバリット・アイコン:お気に入りアイコン)という英語の語句を縮約したものである。
ルートディレクトリに favicon.ico という名称のファイルを設置しておくと、HTML中で指定が無くともfaviconとして認識される。
なるほど。
何に使うの?
ブラウザのタブの左側にアイコンが表示されていると思うが、これの表示に使用している。
ブラウザはサイトにアクセスすると自動的にfavicon.icoを要求する。
知らないうちにアクセスされていて困惑したが、なるほど。
今後ブラウザからアクセスする際には気をつけよう。