MAJ .htaccess Apache 2.4 et 2.2



  • Bonjour, j'utilise la PhenixSuite sous un NAS Synology avec Apache HTTP Server 2.4 car la 2.2 n'est plus supporté sur DSM 7.2

    Je dois modifier à chaque MAJ l'ensemble des fichiers .htaccess

    Apache 2.4 a remplacé la directive Order allow,deny par de nouvelles directives comme Require all denied

    Je n'ai pas la possibilité d'activé le module mod_access_compat pour que l'ancienne syntaxe soit toujours supportée.

    Ma question est de savoir si il serait possible pour une future MAJ de PhenixSuite de faire des fichiers .htaccess compatible avec les deux versions Apache ?

    Avec par exemple le code suivant :

    <FilesMatch "(.log|.txt|.lock|.md|.tpl|.twig|config(.*).xml)$">
    <IfModule mod_authz_core.c>
    # Pour Apache 2.4
    Require all denied
    </IfModule>
    <IfModule !mod_authz_core.c>
    # Pour Apache 2.2
    Order deny,allow
    Deny from all
    </IfModule>
    </FilesMatch>

    La directive <IfModule mod_authz_core.c> vérifie si le module mod_authz_core (introduit dans Apache 2.4) est disponible, ce qui indiquerait que vous êtes sur Apache 2.4. Si c'est le cas, la directive Require all denied est utilisée pour refuser l'accès aux fichiers correspondants.
    La directive <IfModule !mod_authz_core.c> vérifie si le module mod_authz_core n'est pas présent, ce qui indiquerait que vous êtes sur Apache 2.2. Dans ce cas, la configuration utilise la syntaxe Apache 2.2 (Order deny,allow, Deny from all) pour refuser l'accès.



  • Bonjour,
    Une mise à jour est prévue (mais sera basée sur la version Apache) en attendant je vous suggère d'activer le mod_access_compat dans votre /usr/local/etc/apache24/conf/httpd24.conf qui fera le job.



  • Merci pour la réponse Eolia,

    Merci pour le chemin /usr/local/etc/apache24/conf/httpd24.conf pour le NAS Synology

    Je viens d'ajouter dans ce fichier la ligne : LoadModule access_compat_module modules/mod_access_compat.so

    Je ferai les tests demain matin et je vous direz si c'est mieux pour moi.



  • Super je confirme ca fonctionne bien avec l'ajout de "LoadModule access_compat_module modules/mod_access_compat.so" dans /usr/local/etc/apache24/conf/httpd24.conf

    Je n'ai plus besoin de refaire les fichiers .htaccess avec Apache 2.4 qui est sur le Synology DSM 7.2

    Merci.



  • Pour ceux qui sont sous Wamp/Lamp:

    Pour utiliser cette fonctionnalité, le module mod_version doit être activé sur votre serveur Web Apache. Sinon, cela donnera une erreur 500.

    Dans Wamp, il est désactivé par défaut .

    Pour l'activer dans Wamp, vous pouvez suivre les étapes suivantes :

    Recherchez votre fichier de configuration Apache (httpd.conf) : il se trouve généralement sous /wamp/bin/apache/apache(version)/conf/httpd.conf

    Ouvrez le fichier de configuration avec votre éditeur de texte préféré (par exemple Notepad++)

    Recherchez le texte suivant : "mod_version"

    Vous verrez la ligne suivante : #LoadModule version_module modules/mod_version.so

    Décommentez-le pour qu'il devienne activé : supprimez simplement le signe # pour le décommenter.

    Cliquez avec le bouton gauche sur Wamp et appuyez sur Redémarrer tous les services : Puisque vous avez apporté des modifications au fichier de configuration afin d'informer le serveur Apache des modifications, vous devez au moins redémarrer le serveur Apache.


Se connecter pour répondre