Asp.net 是否有办法在IIS中仅显示网站部分的自定义错误页?
我有一个网站,公开常规网页以及WCF web服务。 理想情况下,当web服务抛出soap错误时,网页应该显示状态500的自定义错误页面(使用web.config中的httpError) 不幸的是,status 500的自定义错误页也将使用自定义错误页隐藏soap错误Asp.net 是否有办法在IIS中仅显示网站部分的自定义错误页?,asp.net,wcf,soap,iis-7.5,custom-errors,Asp.net,Wcf,Soap,Iis 7.5,Custom Errors,我有一个网站,公开常规网页以及WCF web服务。 理想情况下,当web服务抛出soap错误时,网页应该显示状态500的自定义错误页面(使用web.config中的httpError) 不幸的是,status 500的自定义错误页也将使用自定义错误页隐藏soap错误 有没有办法在IIS 7.5中只为网站的一部分启用自定义错误页?(我不能将web服务放在一个单独的站点中,这取决于网页中的运行时对象。)如果您的所有web服务文件都存储在一个与站点其余部分分开的目录中,您可以将一个新的web.conf
有没有办法在IIS 7.5中只为网站的一部分启用自定义错误页?(我不能将web服务放在一个单独的站点中,这取决于网页中的运行时对象。)如果您的所有web服务文件都存储在一个与站点其余部分分开的目录中,您可以将一个新的
web.config
文件放在该目录中,并在那里设置一个
节点。这将覆盖根web.config中的设置
如果您的普通URI和web服务URI之间没有明确的分隔,您可以使用根web.config中的位置节点,例如:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<location path="service/foo.aspx">
<system.webServer>
<httpErrors>
<remove statusCode="502" subStatusCode="-1" />
</httpErrors>
</system.webServer>
</location>
</configuration>
您可以根据需要拥有任意数量的这些位置节点。可以使用位置标记在文件级别设置IIS设置。谢谢。这个答案解决了我的问题。我选择UsetheLocation元素(因为我只想维护一个web.config),它按照描述工作,只覆盖该位置的错误处理。