質問

ASP.NET で URL を書き換えるにはどうすればよいですか?

ユーザーが goto できるようにしてほしい http://www.website.com/users/smith の代わりに http://www.website.com/?user=smith

役に立ちましたか?

解決

マネージド Fusion URL リライターとリバース プロキシを試してください。

http://urlrewriter.codeplex.com

これを書き直すためのルールは次のようになります。

# clean up old rules and forward to new URL
RewriteRule ^/?user=(.*)  /users/$1 [NC,R=301]

# rewrite the rule internally
RewriteRule ^/users/(.*)  /?user=$1 [NC,L]

他のヒント

Microsoft は現在、IIS 用の公式 URL 書き換えモジュールを出荷しています。 http://www.iis.net/download/urlrewrite

サーバー変数やワイルドカードの設定を含む、ほとんどの種類の書き換えをサポートします。

また、デフォルトですべての Azure Web インスタンスに存在します。

URL書き換えにhttpmoduleを使用しました www.urlrewriting.net 大成功を収めました (ただし、私はもっと以前のより単純なバージョンだと信じています)

実際の書き換えルールがほとんどない場合は、.NET 2.0 に組み込まれた URL マッピングを使用するほうが簡単なオプションでしょう。これらについては Web 上にいくつか書かれています。 ローラからの4人 1つはかなり網羅的であるように見えますが、ご覧のとおり、正規表現マッピングはサポートされていないため、動的環境ではかなり役に立たなくなります(例の「smith」が特別なケースではないと仮定すると、これらは役に立ちません)

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top