使用 IIS 7.5,我创建了一个自定义 404(和 403.14)错误页面,如果找不到静态文件,则显示来自数据库的内容。
换句话说,如果我浏览到http://mysite.com/test/并且在该位置找不到物理索引或默认文件,则 IIS 将执行我的 404 自定义错误页面,该页面解析 url 并显示存储在数据库,或者说找不到页面的通知。
除了 IIS 不会显示 Web 根索引/默认页面的 404 页面外,一切都运行良好。
Web 根目录中没有文件 - 这是我观察到的结果:
- mysite.com:完全空白的页面
- mysite.com/:完全空白的页面
- mysite.com/index.aspx:正确显示我的自定义错误页面。
- mysite.com/default.aspx:正确显示我的自定义错误页面。
- mysite.com/index.htm:正确显示我的自定义错误页面。
- mysite.com/anything_else/:正确显示我的自定义错误页面。
我的 Web.config 文件包含:
<httpErrors errorMode="Custom" existingResponse="Replace">
<remove statusCode="404" subStatusCode="-1" />
<error statusCode="404" prefixLanguageFilePath="" path="/_page/" responseMode="ExecuteURL" />
<error statusCode="403" subStatusCode="14" path="/_page/" responseMode="ExecuteURL" />
</httpErrors>
我想像网站的其他动态页面一样将主页的内容存储在数据库中,但是经过大量搜索后仍然无法找到如何让 IIS 在找不到主页索引/默认页面时显示我的自定义错误页面.
任何帮助/想法将不胜感激。
饲料