reconnaissance d'un .htaccess (plus précisément pour de l'url rewriting)

Mammouth du PHP | 1885 Messages

01 nov. 2007, 04:39

Alors non en effet il ne semble pas que j'ai fait quoi que se soit avec AllowOverride
Assures-toi d'avoir:

Code : Tout sélectionner

AllowOverride FileInfo
(Redémarre ou reload Apache lorsque tu fais des modifications.)

Et d'inclure cette directive dans ton .htaccess:

Code : Tout sélectionner

RewriteEngine On
Tu peux vérifier que mod_rewrite est chargé à partir d'un phpinfo() (section apache2handler: Loaded Modules)

Ou avec:

Code : Tout sélectionner

# /usr/local/apache2/bin/httpd -L | grep mod_rewrite RewriteEngine (mod_rewrite.c) RewriteOptions (mod_rewrite.c) RewriteBase (mod_rewrite.c) RewriteCond (mod_rewrite.c) RewriteRule (mod_rewrite.c) RewriteMap (mod_rewrite.c) RewriteLock (mod_rewrite.c) RewriteLog (mod_rewrite.c) RewriteLogLevel (mod_rewrite.c)
L'emplacement de httpd peut différer d'un serveur à un autre.

Si tout ça est activé, l'erreur peut provenir de ta règle.

Exemple fonctionnel

.htaccess

Code : Tout sélectionner

RewriteEngine On RewriteRule ^test.txt$ qs.php?var=val
qs.php
<?php
print $_SERVER['QUERY_STRING'];
?>
Résultat lors de l'appel de test.txt

Code : Tout sélectionner

var=val
La programmation est l'expression de la poésie d'un programmeur
Génération PHP

ViPHP
ViPHP | 3607 Messages

05 nov. 2007, 19:52

Bonsoir,
alors après un bon moment d'absence, je reviens...
Mais je n'ai pas beaucoup plus travaillé sur le problème, je viens simplement d'essayer d'ajouter

Code : Tout sélectionner

AllowOverride FileInfo
dans mon apache2.conf, et le serveur m'indique une erreur lorsque je rédémarre:
Syntax error blablabla
AllowOverride not allowed here
Comment faire pour palier à ce problème?

Pour info, le mod_rewrite est bien chargé sur mon serveur...

ViPHP
ViPHP | 5924 Messages

05 nov. 2007, 21:01

Cette directive s'utilise dans un contexte de dossier, typiquement une balise <directory> ou alors un .htaccess
Il faut que tu la places dans la conf de ton serveur à l'endroit où tu veux qu'elle prenne effet, ou bien à la racine de ton arborescence web, et que tu t'assures de sa propagation (en l'occurence, il ne faut pas de AllowOverride None ou de AllowOverride sans FileInfo)

ViPHP
ViPHP | 3607 Messages

05 nov. 2007, 22:10

Bonsoir,
alors je vous avoue que je nage pas mal.... :roll:
J'ai essayé de faire

Code : Tout sélectionner

<Directory "/home/identifiant/devweb"> AllowOverride FileInfo </Directory>
et ça ne semble pas marcher...
Est-ce parceque j'utilise un lien symbolique?

ViPHP
ViPHP | 5924 Messages

05 nov. 2007, 23:18

Est-ce parceque j'utilise un lien symbolique?
Possible, essaye de le faire directement sur les dossiers liés concernés…

ViPHP
ViPHP | 3607 Messages

06 nov. 2007, 11:58

yahou!!!!!!!!!!!!!!!!!!!!!!!
j'ai vaincu grâce à vous!!!
voici ce que j'ai fait:

Code : Tout sélectionner

<Directory "/var/www/devweb"> AllowOverride FileInfo </Directory>
et ça fonctionne au poil!
merci à vous tous...
Et à bientôt pour de nouveaux déboires avec ce cher nunux ;)