当Web服务器无法响应网络客户端时,会发生HTTP 500内部服务器错误。 虽然客户端通常是Internet Explorer,Safari或Chrome等Web浏览器,但在其他使用HTTP进行网络通信的Internet应用程序中也可能遇到此错误。
发生此错误时,客户端用户将在浏览器窗口或其他应用程序的屏幕上看到一条错误消息,通常是在按下按钮或单击触发Internet或企业Intranet上的网络请求的超链接后。 确切的消息取决于涉及哪个服务器和应用程序,但几乎总是包含单词“HTTP”,“500”,“内部服务器”和“错误”。
内部服务器错误的原因
用技术术语来说,错误表示Web服务器收到来自客户端的有效请求,但无法处理它。 HTTP 500错误的三个典型原因是:
- 服务器处理和通信任务过载,以至于无法及时响应客户端(所谓的网络超时问题)
- 服务器由其管理员错误配置(通常是脚本编程或文件权限问题)
- 客户端和服务器之间的Internet连接出现意外的技术故障
另请参阅 - Web浏览器和Web服务器如何通信
最终用户解决方案
由于HTTP 500是服务器端错误,因此普通用户无法自行修复它。 最终用户应该考虑这些建议:
- 重试任务或操作。 如果错误是由于Internet临时故障造成的,那么它很可能会在随后的尝试中成功。
- 检查服务器的Web站点以获取帮助说明。 例如,该网站可能支持备用服务器在发生故障时连接到该服务器。
- 联系网站管理员,通知他们这个问题。 许多网站管理员很欣赏被告知HTTP 500错误,因为他们可能很难看到他们的结果。 解决问题后,您可能还会收到有用的通知。
请注意,上述三个选项都没有确实解决问题的根本原因。
计算机专业人员有时也一般建议处理网站访问问题的最终用户应该(a)清除浏览器的缓存,(b)尝试不同的浏览器,以及(c)删除所涉及的特定站点中的所有浏览器cookie 。 这样的行为极不可能解决任何HTTP 500错误,尽管它们可以帮助处理其他一些错误情况。 (该建议显然也不适用于非浏览器应用程序。)
传统智慧建议不要重新启动计算机,除非在访问多个不同的Web站点和多个应用程序时遇到同样的错误。 理想情况下,您应该检查来自其他设备的相同网站。 不要将HTTP 500与其他类型的HTTP错误混淆:虽然重新启动有助于解决某个客户端特有的问题,但500个错误源于服务器。
服务器管理员提示
如果您管理网站,标准的故障排除技术应该有助于确定HTTP 500错误的来源:
- 在Web服务器日志文件中查找匹配的错误消息
- 检查服务器负载统计信息(用于CPU,内存和磁盘)并检查网络超时的日志
- 检查.htaccess,web.config或类似的配置文件以查找可能引入逻辑错误的最新修改
- 检查网站的文件和文件夹权限(特别是如果错误仅针对某些内容的请求发生)
另请参阅 - HTTP错误和状态代码说明