IIS根据原因短语显示相同状态代码的不同自定义错误页面

时间:2019-01-21 14:20:37

标签: iis custom-error-pages

我需要显示不同的自定义错误页面,具体取决于错误文本/原因短语,而不仅仅是状态码。

例如,如果我有以下代码:

        if (id == 1)
        {
            throw new HttpResponseException(new HttpResponseMessage(HttpStatusCode.Forbidden) {ReasonPhrase = "foo"} );
        }
        throw new HttpResponseException(new HttpResponseMessage(HttpStatusCode.Forbidden) { ReasonPhrase = "bar" });

我希望IIS为403 foo返回一种自定义页面,为403 bar返回另一种自定义页面。这是因为我需要自定义我们没有源代码的请求拦截器返回的错误。

理想情况下,除了<httpErrors>中的状态代码外,我们还可以指定一个ReasonPhrase正则表达式。

如果IIS中没有内置方法,我可能会尝试制作另一个请求拦截器并将其链接在前面,以便它可以修改响应并提供自定义错误页面。

0 个答案:

没有答案