public function generateServerVariables($buffer, $socket)
{
$_SERVER['SERVER_PORT'] = $this->port;
$_SERVER['SERVER_ADDR'] = $this->host;
$socketInfo = uv_tcp_getpeername($socket);
if (isset($socketInfo['address'])) {
$_SERVER['REMOTE_ADDR'] = $socketInfo['address'];
}
$result = array();
$_SERVER['RAW_HTTP_HEADER'] = $buffer;
$result = $this->httpParser->parse($buffer);
if (isset($result['HEADERS']['HOST'])) {
$_SERVER['HTTP_HOST'] = $result['HEADERS']['HOST'];
}
$requestMethod = $result['REQUEST_METHOD'];
//constructing server variables
$_SERVER['REQUEST_METHOD'] = $result['REQUEST_METHOD'];
if (isset($result['PATH'])) {
$_SERVER['REQUEST_URI'] = $_SERVER['PATH_INFO'] = $result['PATH'];
}
if (isset($result['HEADERS']['USER_AGENT'])) {
$_SERVER['HTTP_USER_AGENT'] = $result['HEADERS']['USER_AGENT'];
}
}