<httpErrors>标签 - 尊重代字号(〜)或类似?

Ste*_*per 6 error-handling asp.net-mvc

使用<customErrors>web.config文件中的旧标记,可以编写;

<customErrors mode="RemoteOnly" defaultRedirect="~/ErrorPage/">
  <error statusCode="500" redirect="~/ErrorPage/E500" />
</customErrors>
Run Code Online (Sandbox Code Playgroud)

并且~in redirect="~/ErrorPage/E500"由网站的根替换.

然而,在使用中<httpErrors>,我发现波浪线不受尊重;

<httpErrors errorMode="Custom" existingResponse="Replace">
  <remove statusCode="500" subStatusCode="-1" />
  <error statusCode="500" path="~/ErrorPage/E500" responseMode="ExecuteURL"  />
</httpErrors>
Run Code Online (Sandbox Code Playgroud)

"修复"它的唯一方法是让我从我的网站的根目录放一个绝对路径;

  <error statusCode="500" path="/MySites/SiteRoot/ErrorPage/E500" responseMode="ExecuteURL"  />
Run Code Online (Sandbox Code Playgroud)

哪种感觉真的错了.有没有办法解决这个问题,或者以URL相对于站点根目录的方式引用它?