我想知道是否有一种方法可以在apache上运行的PHP中获取原始的HTTP请求数据,而不需要使用任何额外的扩展。我已经在手册中看到了HTTP函数,但我没有在我的环境中安装扩展的选项。
虽然我可以从$_SERVER访问信息,但我希望看到发送到服务器的原始请求的原样。PHP将头名称转换为适合它自己的数组键样式,例如。一些测试头变成了HTTP_X_SOME_TEST_HEADER。这不是我想要的。
发布于 2008-10-03 03:49:26
您是指$_SERVER
中包含的信息吗
print_r($_SERVER);
编辑:
那么这样做行吗?
foreach(getallheaders() as $key=>$value) {
print $key.': '.$value."<br />";
}
发布于 2008-10-03 03:59:02
使用以下php包装器:
$raw_post = file_get_contents("php://input");
发布于 2016-03-29 07:03:08
试试这个:
$request = $_SERVER['SERVER_PROTOCOL'] .' '. $_SERVER['REQUEST_METHOD'] .' '. $_SERVER['REQUEST_URI'] . PHP_EOL;
foreach (getallheaders() as $key => $value) {
$request .= trim($key) .': '. trim($value) . PHP_EOL;
}
$request .= PHP_EOL . file_get_contents('php://input');
echo $request;
https://stackoverflow.com/questions/165603
复制相似问题