在 PHP 中你可以使用socket函数编写一个简单的 HTTP 服务器。以下是一个示例代码监听 9000 端口当收到请求时返回 Hello, World1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253?php// 设置监听端口$host127.0.0.1;$port 9000;// 创建一个 TCP 套接字$server socket_create(AF_INET, SOCK_STREAM, SOL_TCP);if($server false) {echo无法创建套接字: . socket_strerror(socket_last_error()) .\n;exit(1);}// 绑定套接字到地址和端口if(socket_bind($server,$host,$port) false) {echo无法绑定套接字: . socket_strerror(socket_last_error()) .\n;exit(1);}// 开始监听if(socket_listen($server, 5) false) {echo无法监听端口: . socket_strerror(socket_last_error()) .\n;exit(1);}echo服务器已启动正在监听 $host:$port...\n;while(true) {// 接受客户端连接$client socket_accept($server);if($client false) {echo无法接受客户端连接: . socket_strerror(socket_last_error()) .\n;continue;}// 读取客户端请求$request socket_read($client, 1024);// 构建 HTTP 响应内容$responseHTTP/1.1 200 OK\r\n;$response.Content-Type: text/plain\r\n;$response.Connection: close\r\n;$response.\r\n;$response.Hello, World;// 发送响应到客户端socket_write($client,$response);// 关闭客户端连接socket_close($client);}// 关闭服务器套接字socket_close($server);代码解释创建服务器套接字socket_create() 创建一个 TCP 套接字用于监听客户端的连接。绑定套接字socket_bind() 将套接字绑定到本地的 127.0.0.1 地址和 9000 端口。监听端口socket_listen() 开始监听客户端连接最大等待队列为 5。接受连接socket_accept() 等待并接受来自客户端的连接。读取请求socket_read() 读取客户端发送的请求这里只读取了请求的第一部分实际应用中可以根据需要解析 HTTP 请求。发送响应构建一个简单的 HTTP 响应将 Hello, World 作为响应体返回。关闭连接socket_close() 关闭客户端和服务器的套接字。运行方式将上面的代码保存为 http_server.php然后在命令行中运行1php http_server.php服务器将会启动监听 9000 端口。当你使用浏览器或其他 HTTP 客户端如 curl访问 http://127.0.0.1:9000 时你应该会收到以下响应Hello, World到此这篇关于基于PHP实现一个简单的http服务器的文章就介绍到这了