Hello,
Thank a lot for your answers !
I finally managed to find out what was the cause of the loop. In apache httpd.conf file I had the following directives which were overriding any “Require shibboleth” directive present in virtualhosts or htaccess files :
<LocationMatch “/wp-login.php”>
Require ip xxx.xxx.0.0/16
</LocationMatch>
The fix was to change theses directives to :
<LocationMatch “/wp-login.php”>
AuthType shibboleth
<RequireAll>
Require shibboleth
Require ip xxx.xxx.0.0/16
</RequireAll>
</LocationMatch>