500

Internal Server Error

官方 子状态代码
一个未指明的内部服务器错误

500状态代码的一般解释

不幸的是,这个文本块只有英文版本。

The HTTP 500 Internal Server Error status code occurs when the server has a problem and is unable to process the user's request. This can have various reasons, such as technical problems, overloading of the server or problems with the software that runs the server.

HTTP状态代码500的规范

500 Internal Server Error状态代码表示服务器遇到了一个意外的情况,使其无法完成请求。

来源/引自: 500 Internal Server Error HTTP状态代码由6.6.1的RFC7231部分指定。

如何用PHP抛出一个500状态代码?

要在一个网页上抛出HTTP状态代码500,可以使用PHP函数http_response_code。其语法如下: http_response_code(500) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

测试500 HTTP状态代码

为了能够在客户端显示HTTP状态代码(本例中为500 Internal Server Error)和其他信息,必须用F12打开开发控制台。然后导航到 "网络 "标签。现在可以打开页面,网站(例如index.php)应该在网络标签中可见。这必须被选中,然后必须选择Herder部分。然后,用户将看到以下结果:

状态代码 500 Internal Server Error
概述
URL: https://http-statuscode.com/errorCodeExample.php?code=500
状况: 500 Internal Server Error
那些: Network
IP地址: XX.XX.XX.XX
状态代码 500 Internal Server Error

我如何解决500状态代码的问题?

要修复HTTP错误500 Internal Server Error,我们首先要做的是找出HTTP 500 Internal Server Error状态代码首先被抛出的原因。原因可能是:

  1. 服务器配置或编程的问题
  2. 在".htaccess "文件中的错误
  3. 服务器上缺少或损坏的文件
  4. 服务器过载或资源不足,如CPU、
  5. 难以连接到其他系统或数据库
  6. 安全问题,如DDoS攻击或恶意软件感染
  7. 服务器上的应用程序或框架错误

所有这些事情都需要检查,根据最后做出的改变,这应该首先检查。由于导致HTTP 500 Internal Server Error状态代码的原因可能是多种多样的,因此无法做出一般性的建议。

所有这些事情都需要检查,这取决于最后做出的改变。

如何为状态代码500创建你自己的错误页面

使用 "Apache "和 "NGINX "网络服务器,创建你自己的500 Internal Server Error错误页面是相对容易的。

Apache Webserver

网络服务器 "Apache "是互联网上最常见的网络服务器之一。要在 "Apache "中创建自己的500 Internal Server Error错误页面,必须在以下文件中做如下修改。

File: .htaccess
ErrorDocument 500 /errors/500.html

NGINX Webserver

与网络服务器 "Apache "类似,"NGINX "也在互联网上广泛使用。要在 "NGINX "中创建自己的500 Internal Server Error错误页面,必须在以下文件中做如下修改。

File: sites-enabled/default
error_page 500 /500.html;
location = /500.html {
    root /usr/share/nginx/html;
    internal;
}

500状态代码的浏览器兼容性

Chrome no data
Edge no data
Firefox no data
Opera no data
Safari no data
Chrome Android no data
Firefox for Android no data
Opera Android no data
Safari on iOS no data
Internet no data
WebView Android no data

编程语言中的常量

HttpStatusCode.InternalServerError
http.StatusInternalServerError
Response::HTTP_INTERNAL_SERVER_ERROR
httplib.INTERNAL_SERVER_ERROR
http.client.INTERNAL_SERVER_ERROR
http.HTTPStatus.INTERNAL_SERVER_ERROR
:internal_server_error

500状态代码的子状态代码

子状态代码纯粹是技术性的,不应该被发送给用户。例如,如果状态代码500.1被抛出,它可能被记录下来,但状态代码500将被发送给用户。:
500.0 Module or ISAPI error occurred
HTTP IIS, 非官方的
500.11 Application is shutting down on the web server
HTTP IIS, 非官方的
500.12 Application is busy restarting on the web server
HTTP IIS, 非官方的
500.13 Web server is too busy
HTTP IIS, 非官方的
500.15 Direct requests for Global.asax aren't allowed
HTTP IIS, 非官方的
500.19 Configuration data is invalid
HTTP IIS, 非官方的
500.21 Module not recognized
HTTP IIS, 非官方的
500.22 An ASP.NET httpModules configuration does not apply in Managed Pipeline mode.
HTTP IIS, 非官方的
500.23 An ASP.NET httpHandlers configuration does not apply in Managed Pipeline mode
HTTP IIS, 非官方的
500.24 An ASP.NET impersonation configuration does not apply in Managed Pipeline mode
HTTP IIS, 非官方的
500.50 A rewrite error occurred during RQ_BEGIN_REQUEST notification handling. A configuration or inbound rule execution error occurred
HTTP IIS, 非官方的
500.51 A rewrite error occurred during GL_PRE_BEGIN_REQUEST notification handling. A global configuration or global rule execution error occurred
HTTP IIS, 非官方的
500.52 A rewrite error occurred during RQ_SEND_RESPONSE notification handling. An outbound rule execution occurred
HTTP IIS, 非官方的
500.53 A rewrite error occurred during RQ_RELEASE_REQUEST_STATE notification handling. An outbound rule execution error occurred. The rule is configured to be executed before the output user cache gets updated
HTTP IIS, 非官方的
500.100 Internal ASP error
HTTP IIS, 非官方的
作者: Tony Brüser
作者: Tony Brüser

Tony Brüser 是一位热衷于 HTTP 状态代码的网络开发人员。

LinkedInGitHub