diff --git a/core/trunk/core/class/web_service/Maarch_SOAP_DISCO_Server.php b/core/trunk/core/class/web_service/Maarch_SOAP_DISCO_Server.php
index 1aa9b7b240e952e68a9654d66ef5babbfbed27e5..312c5ac9a25e70a84e5db7b4bf5089a5b374930f 100644
--- a/core/trunk/core/class/web_service/Maarch_SOAP_DISCO_Server.php
+++ b/core/trunk/core/class/web_service/Maarch_SOAP_DISCO_Server.php
@@ -19,7 +19,8 @@ class Maarch_SOAP_DISCO_Server extends SOAP_DISCO_Server
     private function selfUrl()
     {
         $rootUri = self::_getRootUri();
-        $protocol = (array_key_exists('HTTPS', $_SERVER) && $_SERVER['HTTPS'] == 'on')
+        $protocol = ( (array_key_exists('HTTPS', $_SERVER) && $_SERVER['HTTPS'] == 'on') ||
+                      (array_key_exists('HTTP_FORCE_HTTPS', $_SERVER) && $_SERVER['HTTP_FORCE_HTTPS'] == 'on') )
             ? 'https://' : 'http://' ;
         $lastChar = strlen($rootUri) - 1;
         if ($rootUri[$lastChar] != '/') {