httphandler を使用して、ブラウザーの URL を Web サイト内のファイルに再マップします。これは正常に機能しますが、新しいディレクトリの下に作成したファイルにアクセスできません。URL は次のようになります。
http://mobile.mysite.com/monitoring/help/help.aspx
それでも、404 エラーで返される情報は、次のファイルが見つからないことを示しています。
D:\Sites\Website\monitoring\help\help.aspx
しかし、ファイルは実際には次の場所にあります。
D:\Sites\Website\mobile\monitoring\help\help.aspx
私の http ハンドラーは通常、「モバイル」サブドメインを認識します。実際、実際のファイルを省略してディレクトリのみを使用すると、ハンドラーが呼び出されます。コードにブレークポイントを配置しても、VS が呼び出されることはありません。IIS が存在しないディレクトリの下の help.aspx にアクセスしているのはなぜですか? httphandler が呼び出されないのはなぜですか。前述したように、httphandler は事実上他のすべてのファイルに対して機能します。他のドメインにある aspx ファイルを呼び出すことができます。
これは、私のハンドラーが web.config ファイルでどのように見えるかです:
<add name="FileServerHandler-Files" path="*.*" verb="*" type="FileServerHandler" modules="ManagedPipelineHandler" scriptProcessor="" resourceType="Either" requireAccess="Read" allowPathInfo="false" preCondition="" responseBufferLimit="4194304" />
IIS7 で ASP.NET 4.0 を実行する
サブドメイン「mobile」は、実際にはメイン サイトと同じ IP アドレスにマッピングされています。これは何か関係がありますか?存在する場合、ハンドラーがモバイル ドメインのフォルダーにアクセスできるのに aspx ファイルにアクセスできない理由が説明されていません。