我希望将来能够通过另一个Web服务器或自己编写的服务器处理HTTP请求。 我想了解如何正确提供请求数据给PHP。 请求数据应以什么形式提供 数据是通过标准输入(stdin)还是其他方式提供给PHP的 PHP如何处理接收到的请求数据,是否需要执行其他操作来填充$_SERVER变量等。
很简单。Web服务器通过CGI接口与PHP通信。这需要设置环境变量,调用php解释器,将POST正文通过stdin进行管道传输,然后从stdout读取PHP响应。 如何从虚拟/自定义“Web服务器”中调用PHP 如何将POST数据传递给PHP-CGI? http://pear.php.net/package/HTTP_Server 什么是通用网关接口(CGI)? PHP对$_SERVER变量的后处理非常简单,只构造了PHP_SELF和PHP_AUTH_USER等,如手册所述。其余部分由Web服务器提供(例如将所有HTTP头转换为HTTP_* env变量)。