by manamana
10. August 2009 19:24
BlogEngie.NET もそうなのですが、url に存在しない path を打ち込んでも動いたりします。
先日ソースを読んでいて、該当部分に行き当たりました。(※ UrlRewrite.cs)
HTTPモジュールという奴なんですね・・・
ページを処理する前後で何かやっているんだろうと思っていましたが、結構有名みたいです。知らなかった~
昔なら特に問題にしませんでしたが、 今ではセキュリティやSEO的に重要だと認識できます。
url の GET 部分を隠蔽したり、統一された url を生成できるからです。
例えば、http://xxxx/post.aspx?id=yyyy を、http://xxxx/post/yyyy で認識できると
実際の aspx ファイルの存在を隠蔽することができるし、
サーチロボットは、簡単な仕組みでページを走査していくことが予想できます。
※最近のサーとロボットは GET 部分を普通に探ってくれるみたいですけど
知ってしまったからには入れ込まないとダメですね。
きっと何かの役に立つに違いない。
追記:
ASP.NET だと、Global.asax で処理するのが一般的みたいです。
http://msdn.microsoft.com/ja-jp/library/ms972974.aspx (MSDN)
ちゃんとマニュアルに載っているし・・・