2007年12月 1日

[Apache-Users 6908]#6906と#6907へのレス(URLの「/」補完)(Re: Re: mod_rewrite での以下の実現方法に悩んでます)

** Apache ユーザーズメーリングリスト **
** 注意:このメールへの返信は Apache-Users へ行きます **

質問者のだいすけです。

内容が近いので、
Tietew さん@#6906へのレスと、佐久間さん@#6906へのレスをまとめて書きます。
なお、以下はmod_rewriteやMultiViewなどは使っていないという前提で。


Tietew さん@#6906は書きました:
> > これはガセです。
> > URL的に http://example.comhttp://example.com/ は「等価」なの
> > で、ブラウザ(ユーザエージェント)のリクエストは同一 (GET /) に
> > なります。
> >
> > もし、補完されていないように見えても、それはブラウザの表示上のバ
> > グであって、実際には / がリクエストされているので、決して上の
> > RewriteRule には引っかかりません。
> >
> > もしも本当に NULL PATH がリクエストされるような場合(ブラウザの
> > バグですが)は、400 Bad Request が返ります。
「GET /」・・・・たしかにそうですよね。

で、ふと思い出したのですが、数年前まだブロードバンドが普及していないころ、
↓のような議論があった気がします。(Apache MLだったかな・・・?)

(1)ブラウザが http://example.com/foo」 にアクセスすると・・・

(2)サーバは http://example.com/foo」なんてファイルはないよ、と返す

(3)あ、すみません http://example.com/foo/」にアクセスします、と再度
リクエスト

(4)サーバは「OK http://example.com/foo/index.html(※)」を返すね
(※)または、index.php index.hdml index.shtml index.wmlなど、もしくは、
ファイル/ディレクトリ一覧を返す

となるので、
無駄なトラフィックを減らすためには、アンカーを貼るときや、なんかしらの宣
伝に載せるURLは、
http://example.com/foo」じゃなくて http://example.com/foo/」にすべき
だ・・・

と聞いた記憶があります。

ただ、ドキュメントルート直下の「/」の場合は、理屈が違う(「GET /」をリク
エストする)ので、
そのような無駄な往復のトラフィックはない・・・という記憶が。。。

//-----------------------------------------------------------

で、佐久間さん@#6906がおっしゃられた、
>DirectorySlash On
(すみません、はじめてしりました)
は、ドキュメントルート直下「以外」のスラッシュを補完して、上記の無駄なト
ラフィックを減らす
と思ったのですが、違うでしょうか?

//-----------------------------------------------------------
なお、
佐久間さん@#6906さん曰く
>> >>環境は、レンタルサーバのVPSで、
>> >>CentOS4、Apache2.0.59、MySQL5、PHP5.1です
> >Apache 2.0.59 はいくつかの Security Bug も見つかっていますので,
2.0.61 などを使
われたほうが良いと思います.使い方によっては関係ないといえば関係ないこと
なんです
が....

なるほど、ありがとうございます。

以上。よろしくお願い申し上げます。


--
入退会・変更・配送一時停止は以下へ
http://mm.apache.jp/mailman/listinfo/apache-users

投稿者 xml-rpc : 2007年12月 1日 06:45
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/67097
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。