1

私のチームは、ASP.NET 3.5 から ASP.NET 4.0 にアップグレードしています。現在、Helicon ISAPI Rewrite を使用して、がクエリ文字列変数であり、(当然のことながら) 仮想ディレクトリである場所にマップhttp://localhost/<account-name>/default.aspxしています。http://localhost/<virtual-directory>/default.aspx?AccountName=<account-name><account-name><virtual-directory>

アップグレード前にチルダ (~) が解決されhttp://localhost/<account-name>/...(これを実行したい)、アップグレード後にチルダが解決され、クエリ文字列が必要なhttp://localhost/<virtual-directory>/...ためエラーが発生します。<account-name>

システムには、相対パスだけでなく URL 全体を使用する機能がいくつかあるため、すべてを相対パスに置き換えることは避けたいと思います。

価値があるのは、Windows 7 で IIS7、ASP.NET 4.0 を搭載した Visual Studio 2010、および 64 ビットの Helicon ISAPI Rewrite を使用していることです。ASP.NET 3.5 バージョンに戻しても問題なく動作します (4.0 アプリ プール内にない限り、IIS で何も変更されていないと思います。3.5 と 4.0 の間で切り替えると、アプリ プールを変更する必要があります)。 IIS で)。

何か案は?前もって感謝します!

4

1 に答える 1

1

IIS 7 には適切な http リダイレクト サポートがあります。そのため、その ISAPI フィルターを使用する必要がなくなる可能性があります

http://technet.microsoft.com/en-us/library/cc732969(WS.10).aspx

ISAPI を使用する別の方法は、HTTP モジュール リダイレクトを使用することです。

http://weblogs.asp.net/fmarguerie/archive/2004/11/18/265719.aspx

于 2010-06-14T20:39:06.660 に答える