我们的网络服务器出现了问题,这让我们很生气!!
当我们在web.config中定义defaultDocument时,我们总是会遇到可怕的403.14 Http错误。配置是(在system.webserver内):
<defaultDocument enabled="true">
<files>
<clear/>
<add value="~/Forms_Mosaic/Our System.aspx"/>
</files>
</defaultDocument>
我们正在使用IIS 7.0,如果我们打开目录浏览,我们可以愉快地浏览到指定的文件。我们将其所在的文件夹设置为ANONYMOUS LOGON用户凭据,并且还可以使用完全限定的URL访问该页面。
有人可以建议我们为什么一直收到这个错误吗?
感谢。
答案 0 :(得分:1)
我今天遇到了类似的问题,发现波浪号(〜)和前锋斜线导致了这个问题。例如,虽然以下似乎不起作用:
<defaultDocument enabled="true">
<files>
<add value="~/test.htm" />
</files>
</defaultDocument>
将文件指定为普通相对URL工作正常,至少对我而言:
<defaultDocument enabled="true">
<files>
<add value="test.htm" />
</files>
</defaultDocument>
请注意,如果您希望的默认文档位于相对于应用程序根目录的子文件夹中(就像您的情况那样),那么当您浏览到子文件夹时,您将遇到同样的问题。例如,如果您浏览到http://example.com/Forms_Mosaic/ IIS将在http://example.com/Forms_Mosaic/Forms_Mosaic/Our%System.aspx查找默认文档,这显然不存在。
让我觉得带有Server.Transfer或Response.Redirect的根文件夹中的default.aspx在OP的特定情况下可能是更好的解决方案,而不是使用站点范围的设置来处理真正的文件夹特定的问题。
答案 1 :(得分:0)
您指定的值不是有效的网址。尝试:
<defaultDocument enabled="true">
<files>
<clear/>
<add value="~/Forms_Mosaic/Our%20System.aspx"/>
</files>
</defaultDocument>
答案 2 :(得分:0)
如果您使用的是https://www.w3.org/Protocols/rfc2616/rfc2616-sec13.html,也可能会出现此错误。在这种情况下,该值必须是非映射值。因此,对于以下情况,如果值为page-b.aspx,则会看到错误,但如果是page-a.aspx,则会看到错误。
<urlMappings>
<add mappedURL="~/page-a.aspx" url="~/page-b.aspx" />
</urlMappings>