500 - 在服务器上发布后内部服务器错误
Posted
技术标签:
【中文标题】500 - 在服务器上发布后内部服务器错误【英文标题】:500 - Internal server error after publish on server 【发布时间】:2019-07-12 15:57:31 【问题描述】:在将我的 asp mvc 应用程序发布到 plesk 主机后,出现 500 错误。当我在本地运行它时一切正常。
我检查了我的连接字符串。此连接字符串是正确的,可用于在该服务器上托管的其他应用程序。
尝试打开调试并查看详细的错误消息。 将此类代码添加到我的 web.config 并关闭服务器上的自定义错误,同时在服务器 (Plesk) 上打开调试模式
没有任何帮助....(下面的配置代码)
-
检查了服务器上文件的所有权限。
<system.web>
<customErrors mode="Off"/>
</system.web>
<system.webServer>
<httpErrors errorMode="Detailed" />
<asp scriptErrorSentToBrowser="true" />
</system.webServer>
routes.MapRoute(
"Test",
"controller/action/GUID/questionNumber",
new controller = "Test", action = "Index", GUID = "", questionNumber = "" // Parameter defaults
);
如何解决? :(
【问题讨论】:
服务器运行的是什么版本的 ASP.NET?还要检查它是否已启用并检查日志。你会看到错误 @Bosco。 4.7版本。在日志中,我只有一个带有消息的错误 441 - 80 - 和带有相同消息的 1381。一件有趣的事情是我可以访问另一个控制器(主页/关于)但不能测试/未邀请。我有一个自定义路由设置。如果用户在参数中没有任何键,则用户默认重定向到 Test/NotInvited。更新了描述中的问题以查看路线设置 您获得了 500,但您是否获得了黄屏死机?您是否尝试过捕获错误消息并将其记录在某处?对路由等进行随机猜测不会像查看实际错误消息那样有效。 所以我检查了我的代码,它在本地运行良好,没有任何错误,但我无法在服务器上调试友好的错误屏幕 ***.com/questions/5385714/… 并尝试了这个问题... 【参考方案1】:关于如何在事件查看器中查找与aps.net应用程序相关的500错误,您可以参考以下步骤:
-
转到事件查看器
查找windows日志->应用程序
-
点击右侧窗口中的过滤当前日志,选择asp.net 2.0、4.0。
然后会在事件查看器中显示详细错误内容
如果你想找到应用程序池相关的问题,你可以去系统。
在右侧窗口中单击过滤当前日志并选择 WAS。
然后您可以找到与应用程序池相关的错误。
【讨论】:
【参考方案2】:所以,问题出在控制器名称上。刚刚改名为 TestController 为 ExamController
【讨论】:
以上是关于500 - 在服务器上发布后内部服务器错误的主要内容,如果未能解决你的问题,请参考以下文章
MVC4:服务器重新启动后,无法发布 ajax 内部服务器错误 500
Next.js 500 内部服务器错误在 404 页面内调用 useEffect Hook 后立即出现