0

ブラウザが2番目のリクエストを発行する必要のないリダイレクトをWebサーバーが発行する方法はありますか?

たとえば、ブラウザがを要求しhttp://www.mysite.com/lionましたが、サーバーはブラウザが場所をに変更することを望んでいますhttp://www.mysite.com/jungle。これを実現する方法を私が知っている唯一の方法は、サーバーがURLを含む3xxステータスコードを送信することであり、ブラウザーはそれを取得するための新しい要求を発行します。jungle

サーバーがリクエストjungleに応じてページを配信しlion、ブラウザに「URLを設定してください」と伝えることは可能http://www.mysite.com/jungleですか?

4

2 に答える 2

2

はい、それはURL書き換えと呼ばれます。ApacheとIISの両方に、これを可能にするモジュールがあります。

Apacheの場合、仮想ホスト内の.htaccessファイルまたはhttpd.conf内:

RewriteEngine On
RewriteRule lion jungle [L]

ジャングルの内容は、ライオンが要求されたときにリダイレクトなしで送信されます。

于 2010-12-15T08:05:46.987 に答える
1

ASP.NETでは、Server.Transfer()を使用できます。これにより、現在のリクエストに対して別のページが返されます。

ブラウザはこれが起こっていることを認識していないことに注意してください。http://www.mysite.com/lionからのコンテンツが表示されても、アドレスバーに表示されhttp://www.mysite.com/jungleます。

別のページが読み込まれていることをブラウザに通知したい場合は、私に関する限り、リダイレクトが必要です。

于 2010-12-15T08:02:44.530 に答える