diff --git a/library/Unl/Controller/Action/Authenticate.php b/library/Unl/Controller/Action/Authenticate.php index 12de3e87b129b3c0e9f0b58b4bd71799621492b0..3679925ee5376ddb99dd2a8638c40bb78b50ae78 100644 --- a/library/Unl/Controller/Action/Authenticate.php +++ b/library/Unl/Controller/Action/Authenticate.php @@ -47,15 +47,19 @@ abstract class Unl_Controller_Action_Authenticate extends Unl_Controller_Action { $this->_destroyUser(Zend_Auth::getInstance()->getIdentity()); Zend_Auth::getInstance()->clearIdentity(); - - if (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') { - $returnUrl = 'https://'; + + $baseUrl = Zend_Controller_Front::getInstance()->getBaseUrl(); + if (parse_url($baseUrl, PHP_URL_SCHEME)) { + $returnUrl = $baseUrl; } else { - $returnUrl = 'http://'; + if (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') { + $returnUrl = 'https://'; + } else { + $returnUrl = 'http://'; + } + $returnUrl .= $_SERVER['SERVER_NAME'] . $baseUrl; } - $returnUrl .= $_SERVER['SERVER_NAME'] . Zend_Controller_Front::getInstance()->getBaseUrl(); - $logoutUrl = $this->_getCasAdapter()->getLogoutUrl($returnUrl); $this->_redirect($logoutUrl); }