/** * * @return Gpf_Net_Server_Http_Request */ private function readRequestHeader() { $this->debug("Trying to read HTTP request's header"); try { $header = $this->driver->read(Gpf_Net_Server_Http_Message::BODY_SEPARATOR, $this->requestHeaderMaxBuffer); $this->debug("HTTP request's header read OK"); } catch (Gpf_Net_Server_SocketException $e) { $this->driver->closeConnection(); throw new Gpf_Net_Server_SocketException("Header: " . $e->getMessage()); } $header = substr($header, 0, -strlen(Gpf_Net_Server_Http_Message::BODY_SEPARATOR)); $request = Gpf_Net_Server_Http_Request::parseHeader($header); $this->debug('URL:' . $request->getUri()); $this->checkRequestHeader($request); $request->setServerVars($this); return $request; }