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

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : reconnaissance d'un .htaccess (plus précisément pour de l'url rewriting)

par jojolapine » 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 ;)

par Sékiltoyai » 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…

par jojolapine » 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?

par Sékiltoyai » 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)

par jojolapine » 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...

par Xenon_54 » 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

par jojolapine » 01 nov. 2007, 00:19

Désolé de ne pas avoir répondu à ta question...
Alors non en effet il ne semble pas que j'ai fait quoi que se soit avec AllowOverride
Mais euh j'ai beau lire le liens sur le site d'apache, je vois pas du tout ce qu'il faut que j'indique... :?

par Ripat » 31 oct. 2007, 19:12

As-tu activé la lecture des htaccess avec la directive AllowOverride All?

par Sékiltoyai » 31 oct. 2007, 11:55

bah rm /var/www/mon_site , tu fais un rm sur le lien symbolique…

par jojolapine » 31 oct. 2007, 11:49

Oui je suis bien conscient qu'il faut que je supprime le liens symbolique, mais il est où?
si j'ai fait la commande:

Code : Tout sélectionner

cd /var/www sudo ln -s /home/votre_identifiant/répertoire_pour_votre_site mon_site
je fait rm quoi?[/code]

par Sékiltoyai » 31 oct. 2007, 11:46

bah avec rm :-/

par jojolapine » 31 oct. 2007, 11:42

Donc en résumé, mieu vaut que je fasse celà avec un alias?
Bon je vais essayer de me débrouiller tout seul pour le faire, mais avant celà, pourriez-vous m'indiquer comment "annuler" le lien symbolique que j'ai créé? (désolé je suis pas encore une flêche sous linux... :-* )

par Sékiltoyai » 30 oct. 2007, 14:02

pour les droits, je ne croit pas qu'il en ait beaucoup... ça change quelque chose?
Il faut que apache ait les droits de lecture du dossier et du .htaccess, et si possible aussi le droit d'exécution sur le dossier, pour pouvoir y entrer…
Pour ce qui est des dossiers, c'est peut-être là que ça pêche....
j'ai suivi ce tutoriel: http://doc.ubuntu-fr.org/lamp pour installer la solution LAMP, et à un moment il dit:
Lien symbolique

La première solution consiste à créer dans le répertoire /var/www un lien symbolique vers votre répertoire dans votre /home qui vous servira au quotidien à positionner et modifier vos pages.

Voici le code à lancer dans votre terminal :

Code : Tout sélectionner

cd /var/www sudo ln -s /home/votre_identifiant/répertoire_pour_votre_site mon_site
Voilà, si vous accédez à votre http://localhost vous pouvez voir un nouveau répertoire qui porte le nom « mon_site » et qui pointe vers « /home/votre_identifiant/répertoire_pour_votre_site ».
Donc c'est ce que j'ai fait... alors est-ce que celà peut avoir une incidence sur mon problème?
C'est un peu moche les lins symboliques, et ca fait rajouter de la conf, en l'occurence un FollowSymlink dans les options de dossier. Mais si tu veux le garder, renseigne toi sur FollowSymlink. Sinon, il faut vérifier que ton lien est correct. Tu vas dans le doc_root, tu fais "ls -al" et tu vérifies que tu as bien un fichier mon_site qui pointe vers le répertoire que tu as indiqué.

Si ca ne marche pas avec les symlink, tu peux essayer plutôt avec un "alias nom_de_l_alias chemin_du_site" dans la conf httpd. C'est le moyen normal pour créer un lien vers un dossier qui n'est à priori pas dans l'arborescence web.

par Ripat » 30 oct. 2007, 13:18

As-tu activé la lecture des htaccess avec la directive AllowOverride All?

par jojolapine » 30 oct. 2007, 12:57

Bonjour,
pour ce qui est du nom il s'appel bien .htaccess,
pour les droits, je ne croit pas qu'il en ait beaucoup... ça change quelque chose?
Pour ce qui est des dossiers, c'est peut-être là que ça pêche....
j'ai suivi ce tutoriel: http://doc.ubuntu-fr.org/lamp pour installer la solution LAMP, et à un moment il dit:
Lien symbolique

La première solution consiste à créer dans le répertoire /var/www un lien symbolique vers votre répertoire dans votre /home qui vous servira au quotidien à positionner et modifier vos pages.

Voici le code à lancer dans votre terminal :

Code : Tout sélectionner

cd /var/www sudo ln -s /home/votre_identifiant/répertoire_pour_votre_site mon_site
Voilà, si vous accédez à votre http://localhost vous pouvez voir un nouveau répertoire qui porte le nom « mon_site » et qui pointe vers « /home/votre_identifiant/répertoire_pour_votre_site ».
Donc c'est ce que j'ai fait... alors est-ce que celà peut avoir une incidence sur mon problème?