4

これはSOに関する私の最初の投稿です。:)私の目標は、アプリケーション(既存のVB.NETアプリ震えです)で、次のようなリソースに対するリクエストが発生したときはいつでもです:

/itemimages/image.png

に書き換えられること

http://example.com/itemimages/image.png

本番サイトには 10 GB のイメージがあるため、ローカルでの開発では、約 10 GB の製品イメージをダウンロードしてシャッフルする必要がないように、要求を書き直したいだけです。

Application_BeginRequest() で次のことを試しましたが、実行している問題を説明するためにこれを単純化していることに注意してください。

If (url1.IndexOf("itemimages") > 0) Then
    Dim app As HttpApplication = CType(sender, HttpApplication)
    app.Context.RewritePath("https://www.google.com/images/srpr/logo3w.png")
End If

私が得るエラーは次のとおりです。

「https://www.google.com/images/srpr/logo3w.png」は有効な仮想パスではありません。

https://www.google.com では 2 つのスラッシュを指定していますが、1 つのスラッシュに注意してください。さらに、有効な仮想パスではないことが明示的に言及されているため、ここで絶対 URL を指定できないようです。

「/itemimages/image.png」へのリクエストを「http://www.website.com/itemimages/image.png」に書き換えるにはどうすればよいですか? 私はこれを C# で投稿しています。なぜなら、私はとにかくその言語に慣れており、おそらく 2 つの間のソリューションを非常に簡単に変換できるからです。

4

1 に答える 1

2

Context.RewritePathASP.Net を使用して別のパスで要求を処理します。
外部サーバーでそれを行うのは意味がありません。

あなたがしたいResponse.Redirect

于 2012-07-15T15:38:41.127 に答える