diff --git a/lib/SimpleSAML/Utilities.php b/lib/SimpleSAML/Utilities.php
index d289873139ec84a0e5da793b2e969eefecf4e0e2..168e8648f5f95e262133e79dac70c310c132224e 100644
--- a/lib/SimpleSAML/Utilities.php
+++ b/lib/SimpleSAML/Utilities.php
@@ -132,9 +132,14 @@ class SimpleSAML_Utilities {
 	public static function getRequestURI() {
 		
 		$requesturi = $_SERVER['REQUEST_URI'];
-		if (preg_match('|^/.*?(/.*)$|', $_SERVER['REQUEST_URI'], $matches)) {
-		#$requesturi = $matches[1];
+
+		if ($requesturi[0] !== '/') {
+			/* We probably have an url on the form: http://server/. */
+			if (preg_match('#^https?://[^/]*(/.*)#i', $requesturi, $matches)) {
+				$requesturi = $matches[1];
+			}
 		}
+
 		return $requesturi;
 	}