24
Webアプリケーションのカスタム404エラーページを設定しようとしています。問題は、このアプリケーションがさまざまな環境に展開されることです。場合によっては仮想ディレクトリに存在することもありますが、時にはそうではありません。IIS7でカスタムエラーページを設定するときに相対パスを使用できますか?
私はエラーページというディレクトリにエラーページを持っているし、このように私の設定を設定している:
<httpErrors errorMode="Custom" existingResponse="Replace">
<remove statusCode="404"/>
<error statusCode="404" path="/VirtualDir/ErrorPages/404.aspx" responseMode="ExecuteURL" />
</httpErrors>
</system.webServer>
私は、Webサイトのルートにこれを展開するときにトラブルがあり、/VirtualDir
一部はする必要があります除去される。展開前に削除すると、仮想ディレクトリに展開するときに追加する必要があります。仮想ディレクトリに対して、の相対パスを設定することはできますか?
私は~
を使用してみましたが、それはどちらか動作しません、次のように:
<httpErrors errorMode="Custom" existingResponse="Replace">
<remove statusCode="404"/>
<error statusCode="404" path="~/ErrorPages/404.aspx" responseMode="ExecuteURL" />
</httpErrors>
</system.webServer>
短い答えはであることが表示されます:いいえ、IIS7でカスタムエラーページを設定するときに相対パスを使用することはできません! –
マーティン、私はあなたを信じますが、あなたには引用がありますか? – Michael
@Michael [このリンク](http://www.iis.net/configreference/system.webserver/httperrors/error#005)では、URLはサーバーの相対URLでなければならず、アプリケーションの相対URLではなく、 'responseMode = "ExecuteURL"。 – WolfyUK