2012-01-31 6 views
2

私はC#.NET Webサイトで作業しています。ユーザーはリンクをクリックして、所有している別のWebサイトの別のWebページにリダイレクトされます。コードは非常に理解しやすいですが、Response.Redirect(the_url_we_want_to_go_to)への呼び出しが続くスイッチがあります。Response.Redirect行き先が間違っています

私は何度もデバッグしました。デバッガがこのリダイレクト行にヒットしたときに、パラメータが正しいことを確認できます。この他のウェブサイトのQAバージョンを指しています。 qa.samplesite.comと言うことができます。しかし、ブラウザはそこには行きません。代わりにブラウザが代わりにテスト環境にヒットします。それをtest.samplesite.comと呼ぶことができます。これが問題です。

これらの2つの別々のウェブサイトがあるアプリサーバーの間には何百万ものものがあると私は理解していますが、具体的には、デバッガでアウトバウンドトラフィックを検出する方法があるのですか、またはアプリケーションサーバー自体(IISで)のアウトバウンドトラフィックを確認する方法はありますか?私は、httpモジュール内のインバウンドトラフィックをインターセプトすることに精通しています。たぶんこれは、stackoverflowの質問isnt ...

あなたの助けてくれてありがとう!

+2

アプリケーションがホストされているサーバ/ワークステーションのローカルの 'host'ファイルをチェックし、要求が再ルーティングされていないことを確認してください... – xandercoded

+0

wiresharkを使用してパケットをキャプチャし、検査することができます。おそらくIISのURL書き換え設定... –

+0

nslookup(コマンドラインから)は、ドメイン名があなたのqaサイトが使用されることを期待しているIPに解決されているかどうかを確認することができます。 –

答えて

2

非常に素晴らしいHTTPスニファ "Fiddler"を使用してください。すべてのHTTPリクエストを見ることができます。 a)リダイレクト先が正しいことを確認する必要があります(要求パイプラインで後で上書きされる可能性があります.Response.Redirectは最後の単語ではありません)。b)最初のリダイレクト後に2回目のリダイレクトはありません。

+1

として提案しました。私はフィドラーを使用して、アプリが正しくリダイレ​​クトされていることがわかります。受信環境にテスト環境に送信するものがあります。あなたに感謝してください – james

0

あなたは

のResponse.Redirect( "url_here"、真)とのResponse.Redirectのオーバーロードを使用して試すことができます。

これにより、現在のページでの応答が停止し(endResponseがtrueに設定されているため)、URLにリダイレクトされます。

この問題が解決しない場合は、名前解決エラーが発生する可能性があります。ここで見つかったWindowsディレクトリにあなたのhostsファイルを参照するには

チェック

C:\ WINDOWS \ System32に\ドライバ\ ETC \は、これはそれを行います

希望を開催しています。

0

私は最後に私が持っていた同様の問題を考え出しました。それはかなりばかげていた。私は若干の変更を加えるいくつかの.aspxページをコピーしました。クライアントをリダイレクトしようとしたページで、「CodeBehind」が正しく設定されていませんでした。したがって、それは正しいページにリダイレクトされましたが、別のページからCodeBehindをロードしました!

関連する問題