From 1249c0098776cfa688c7925740c617ceed693105 Mon Sep 17 00:00:00 2001 From: Mauro Asprea Date: Wed, 15 Oct 2014 20:34:46 +0200 Subject: [PATCH] Add load balancer support using non-standard X-Forwarded headers --- src/JacobKiers/OAuth/Request/Request.php | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/JacobKiers/OAuth/Request/Request.php b/src/JacobKiers/OAuth/Request/Request.php index c7b5885..8a909b4 100644 --- a/src/JacobKiers/OAuth/Request/Request.php +++ b/src/JacobKiers/OAuth/Request/Request.php @@ -93,10 +93,17 @@ class Request implements RequestInterface public static function fromRequest($http_method = null, $http_url = null, $parameters = null) { $scheme = (!isset($_SERVER['HTTPS']) || $_SERVER['HTTPS'] != 'on') ? 'http' : 'https'; + $scheme = isset($_SERVER['HTTP_X_FORWARDED_PROTO']) + ? $_SERVER['HTTP_X_FORWARDED_PROTO'] + : $scheme; + $port = isset($_SERVER['HTTP_X_FORWARDED_PORT']) + ? $_SERVER['HTTP_X_FORWARDED_PORT'] + : $_SERVER['SERVER_PORT']; + $http_url = ($http_url) ? $http_url : $scheme . '://' . $_SERVER['HTTP_HOST'] . ':' . - $_SERVER['SERVER_PORT'] . + $port . $_SERVER['REQUEST_URI']; $http_method = ($http_method) ? $http_method : $_SERVER['REQUEST_METHOD'];