IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Apache Discussion :

Erreur "RewriteEngine not allowed here" depuis le passage à Apache 2.4.6


Sujet :

Apache

  1. #1
    Inscrit
    Profil pro
    aaaaa
    Inscrit en
    Novembre 2006
    Messages
    178
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : aaaaa

    Informations forums :
    Inscription : Novembre 2006
    Messages : 178
    Points : 70
    Points
    70
    Par défaut Erreur "RewriteEngine not allowed here" depuis le passage à Apache 2.4.6
    Bonjour,

    J'ai fait un dist-upgrade de ma machine Debian un peu précipitamment et du coup, entre autres, ma version d'Apache a été mise à jour vers la 2.4.6 (je ne sais pas quelle était la version avant, probablement la 2.2). Le souci est que maintenant, à chaque fois que je vais sur une page contrôlée par un fichier .htaccess, j'obtiens l'erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RewriteEngine not allowed here
    Voici le contenu de mon fichier :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    RewriteEngine on
    RewriteCond $1 !^(index\.php|images|css|javascript|js)
    RewriteRule ^(.*)$ /index.php/$1 [L]
    Je ne comprends pas trop pourquoi je n'ai plus le droit de mettre des règles de réécriture, quelqu'un pourrait m'expliquer pourquoi cette version ne l'accepte pas ?

    Merci d'avance

  2. #2
    Membre éprouvé Avatar de Marc3001
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2008
    Messages
    829
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Février 2008
    Messages : 829
    Points : 1 275
    Points
    1 275
    Par défaut
    J'en déduis que tu n'as pas de directive AllowOverride dans ta conf...

    Ce paramètre permet ou non l'utilisation du .htaccess.
    Il valait All par défaut jusqu'en 2.3.9 et None depuis dixit la doc.

    Positionne cette directive comme cela pour régler ton souci :
    Le logiciel, c'est comme le sexe, c'est meilleur quand c'est libre.

    Linus Torvalds

  3. #3
    Inscrit
    Profil pro
    aaaaa
    Inscrit en
    Novembre 2006
    Messages
    178
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : aaaaa

    Informations forums :
    Inscription : Novembre 2006
    Messages : 178
    Points : 70
    Points
    70
    Par défaut
    Merci pour ta réponse

    Si j'ajoute la directive comme tu me l'as proposé, j'obtiens une erreur lors du démarrage d'Apache :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Syntax error on line 187 of /etc/apache2/apache2.conf:
    AllowOverride not allowed here
    La ligne 187 est bien celle à laquelle j'ai ajouté la directive.

    Peut-être qu'il reste des directives de ma conf qui sont responsables de ça ? En enlevant tous les commentaires du fichier de conf, il ressemble à ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
     
     
     
    PidFile ${APACHE_PID_FILE}
     
    Timeout 300
     
    KeepAlive On
     
    MaxKeepAliveRequests 100
     
    KeepAliveTimeout 5
     
     
    <IfModule mpm_prefork_module>
        StartServers          5
        MinSpareServers       5
        MaxSpareServers      10
        MaxClients          150
        MaxRequestsPerChild   0
    </IfModule>
     
    <IfModule mpm_worker_module>
        StartServers          2
        MinSpareThreads      25
        MaxSpareThreads      75 
        ThreadLimit          64
        ThreadsPerChild      25
        MaxClients          150
        MaxRequestsPerChild   0
    </IfModule>
     
    <IfModule mpm_event_module>
        StartServers          2
        MinSpareThreads      25
        MaxSpareThreads      75 
        ThreadLimit          64
        ThreadsPerChild      25
        MaxClients          150
        MaxRequestsPerChild   0
    </IfModule>
     
    User ${APACHE_RUN_USER}
    Group ${APACHE_RUN_GROUP}
     
    AllowOverride FileInfo
     
    AccessFileName .htaccess
     
    <Files ~ "^\.ht">
        Allow from all
        Satisfy all
    </Files>
     
    DefaultType None
     
     
    HostnameLookups Off
     
    ErrorLog ${APACHE_LOG_DIR}/error.log
     
    LogLevel warn
     
    Include mods-enabled/*.load
    Include mods-enabled/*.conf
     
    Include ports.conf
     
    LogFormat "%v:%p %h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" vhost_combined
    LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined
    LogFormat "%h %l %u %t \"%r\" %>s %O" common
    LogFormat "%{Referer}i -> %U" referer
    LogFormat "%{User-agent}i" agent
     
     
    Include conf.d/
     
    Include sites-enabled/
     
    <IfModule mod_headers.c>
        Header set Access-Control-Allow-Origin: *
    </IfModule>
     
    LoadModule rewrite_module modules/mod_rewrite.so
    Je ne suis pas un crack en Apache, loin de là, donc si tu as une idée je suis preneur !

  4. #4
    Membre éprouvé Avatar de Marc3001
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2008
    Messages
    829
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Février 2008
    Messages : 829
    Points : 1 275
    Points
    1 275
    Par défaut
    C'est dommage, tu aurais lu mon lien, tu aurais vu qu'il faut que cette directive soit placée entre des balises <Directory>.

    Only available in <Directory> sections
    AllowOverride is valid only in <Directory> sections specified without regular expressions, not in <Location>, <DirectoryMatch> or <Files> sections.
    Le logiciel, c'est comme le sexe, c'est meilleur quand c'est libre.

    Linus Torvalds

  5. #5
    Inscrit
    Profil pro
    aaaaa
    Inscrit en
    Novembre 2006
    Messages
    178
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : aaaaa

    Informations forums :
    Inscription : Novembre 2006
    Messages : 178
    Points : 70
    Points
    70
    Par défaut
    En effet j'avoue que je me suis précipité sur la directive sans regarder la doc... Maintenant ça a l'air bon : j'ai ajouté le code suivant à ma conf :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <Directory "/var/www/DucksManager/EdgeCreator">
    	AllowOverride FileInfo
    </Directory>
    Par contre je ne trouve pas ça très pratique de devoir indiquer ces répertoires (même si apparemment on peut utiliser des regex pour en prendre en compte plusieurs à la fois) pour bénéficier des .htaccess . M'enfin, c'et résolu !

  6. #6
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Points : 12 977
    Points
    12 977
    Par défaut
    Tu peux le mettre pour le répertoire /var/www, ça se propagera ensuite sur tous les sous-répertoires.

    Du détail, du détail, du détail !!!
    Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 18/02/2013, 09h01
  2. ORA-02287: sequence number not allowed here
    Par Mykhell dans le forum SQL
    Réponses: 4
    Dernier message: 22/06/2009, 11h08
  3. Erreur 405 Method Not Allowed
    Par vorjan dans le forum Langage
    Réponses: 2
    Dernier message: 26/04/2009, 08h19
  4. Réponses: 4
    Dernier message: 09/04/2008, 03h24
  5. Ora-30051 VERSIONS clause not allowed here
    Par big1 dans le forum Administration
    Réponses: 6
    Dernier message: 13/02/2007, 14h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo