【发布时间】:2019-11-13 13:33:18
【问题描述】:
好的,我首先要说我很难解释这个问题:
我有一个具有以下文件树结构的 .net 核心 Web 应用程序
INDEX (WORKING)
|
+-- YOUR-COURSES (WORKING)
|
+-- COURSE (WORKING)
| |
| +-- SEARCH (WORKING)
| |
| +-- DETAIL (404 ERROR)
| |
| +--{COURSE CODE} (404 ERROR)
|
+-- HELP (WORKING)
我已经检查了控制器是否正确并且它是正确的 - 所有代码看起来都应该可以工作 - 奇怪的部分是它之前已经工作过 - 在错误之前所做的更改:
- NuGET UserSecrets 已更新
- 向数据库添加了一个新列(相应地更新了模型)
已发布 - 无法再访问课程/详细信息页面 我去恢复备份,我们遇到了同样的问题。
我完全被难住了 - 很抱歉这个问题不是很好,但我完全不知道为什么、什么或哪里出了问题。
也没有对 IIS 进行任何更改
编辑:忘了提 - 我还检查了所有文件都已发布并且它们都在服务器上可用 - 具有正确的访问权限
编辑2:
<failedRequest url="http://va.brooksbymelton.ac.uk:80/course/details/57356"
siteId="17"
appPoolId=".NET Core"
processId="5072"
verb="GET"
authenticationType="NOT_AVAILABLE" activityId="{800000A6-0000-E300-B63F-84710C7967BB}"
failureReason="STATUS_CODE"
statusCode="401.2"
triggerStatusCode="401.2"
timeTaken="31"
xmlns:freb="http://schemas.microsoft.com/win/2006/06/iis/freb">
所以这似乎是一个身份验证问题... 很棒
编辑 3: 在进一步挖掘 401.2 错误之后,这是一个柏忌(试图让我远离气味)结果模型和表上下文文件设置不正确,所以在重新编写模型和上下文文件之后,它现在加载页面...
数据库上的一个新列破坏了一切 - 为什么它不能有一个简单的 SQL 错误 - 会让生活更轻松
感谢@Lex li 提及失败的请求记录
【问题讨论】:
-
IIS 日志文件中的 404 错误的子状态代码是什么?还要学习失败的请求跟踪以进一步挖掘。
-
我去看看
-
IIS 日志文件中没有错误日志 - 只是对托管的其他网站的 GET 请求 - 但我有一个偷偷摸摸的怀疑,它可能试图抛出异常,但它无法加载错误页面,因此显示 404 错误。
-
所以我设置了失败的请求跟踪 - 看看是否有任何弹出 - 感谢您的建议 :-)
-
statusCode="401.2"