diff --git a/www/saml2/idp/initSLO.php b/www/saml2/idp/initSLO.php
index fd5bd691d1b372f810b2658d6dfccf7161e21bf0..118fcb3088dffa0085732f139c9ecd504244ea3c 100644
--- a/www/saml2/idp/initSLO.php
+++ b/www/saml2/idp/initSLO.php
@@ -3,6 +3,7 @@
 require_once('../../../www/_include.php');
 
 $config = SimpleSAML_Configuration::getInstance();
+$metadata = SimpleSAML_Metadata_MetaDataStorageHandler::getMetadataHandler();
 $session = SimpleSAML_Session::getInstance();
 
 SimpleSAML_Logger::info('SAML2.0 - IdP.initSLO: Accessing SAML 2.0 IdP endpoint init Single Logout');
@@ -18,8 +19,9 @@ if (!isset($_GET['RelayState'])) {
 
 $returnTo = $_GET['RelayState'];
 
+$slo = $metadata->getGenerated('SingleLogoutService', 'saml20-idp-hosted');
+
 /* We turn processing over to the SingleLogoutService script. */
-SimpleSAML_Utilities::redirect('/' . $config->getBaseURL() . 'saml2/idp/SingleLogoutService.php',
-	array('ReturnTo' => $returnTo));
+SimpleSAML_Utilities::redirect($slo, array('ReturnTo' => $returnTo));
 
 ?>
\ No newline at end of file