/** * Return the IIS request ur assigned if available. * @return string|null the request uri or null on unavailable */ private function getIisRequestUri() { if ($this->header->contains("X-Original-Url")) { return $this->header->getField("X-Original-Url")->getValue(); } if ($this->header->contains("X-Rewrite-Url")) { return $this->header->getField("X-Rewrite-Url")->getValue(); } return null; }
/** * Return the forwarded client ip. * @return null|string */ private function getForwardedClientIp() { $clientIp = null; if ($this->httpHeader->contains("X-Forwarded-For") && ($forwardedIps = $this->httpHeader->getField("X-Forwarded-For")->getValue())) { $forwardedIps = array_filter(preg_split("/[\\s]*,[\\s]*/", $forwardedIps), function ($ipToValidate) { return filter_var($ipToValidate, FILTER_VALIDATE_IP); }); if (!empty($forwardedIps)) { $clientIp = array_shift($forwardedIps); } } return $clientIp; }