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

ViPHP
ViPHP | 3607 Messages

27 oct. 2007, 11:24

Bonjour à tous,
Après avoir eu quelques problèmes pour installer un serveur sous (k)ubunutu... j'y suis finallement parvenu...
J'arrive à utiliser des scripts php basiques...
Maintenant j'ai essayer de réinstaller un site qui utilise l'url rewriting... et patatra... ça ne fonctionne pas.
Alors je vous indiques les symptomes:
premièrement mon .htaccess tout bête (simplifié)

Code : Tout sélectionner

RewriteEngine on RewriteRule ^merci\.html$ /devweb/regrave2/index.php?p=contact&dest=merci [L]
ne semble pas être chargé, car lorsque je fait une erreur de syntaxe volontaire, je n'ai pas d'erreur serveur...
Ensuite, j'ai essayer de rajouter ces deux lignes à la fin de mon ficheir de configuration d'apache, et là si je fait une erreur de syntaxe j'ai droit à une erreur, mais si tout est normal, la réécriture n'a aucun effet...
Les chemins ne sont peut-être pas bon (faut il ajouter /home/..../... ?)
Pour info j'ai bien les lignes de configurations qui devraient me permettre d'utiliser un .htaccess:

Code : Tout sélectionner

# # AccessFileName: The name of the file to look for in each directory # for additional configuration directives. See also the AllowOverride # directive. # AccessFileName .htaccess # # The following lines prevent .htaccess and .htpasswd files from being # viewed by Web clients. # <Files ~ "^\.ht"> Order allow,deny Deny from all </Files>
(à noter que la protection sur les .ht* fonctionne)
Donc bon si vous avez quelques idées quand à mon problème... je suis preneur!! :)
Merci d'avance!

ViPHP
ViPHP | 5924 Messages

27 oct. 2007, 13:01

Tu dois activer l'URL rewriting dans la conf du serveur. Fouille un peu la doc d'apache par exemple : http://httpd.apache.org/docs/2.2/mod/mo ... loadmodule

ViPHP
ViPHP | 3607 Messages

27 oct. 2007, 18:25

Bonsoir,
Alors je n'ai pas mon ordi sous la main,mais je croit me souvenir que j'ai vérifié les extensions chargées et que le mod rewrite faisait parti de ces dernières.. :k

ViPHP
ViPHP | 5924 Messages

27 oct. 2007, 18:37

A la limite essaye avec un test simple, genre à la racine du doc_root, avec une redirection dans le même dossier…

ViPHP
ViPHP | 3607 Messages

29 oct. 2007, 18:00

Bonjour,
alors j'ai revérfié, quand je tappe

Code : Tout sélectionner

apache2 -B #ou je ne sais plus éxactement le nom de la commande
L'extension rewrite est bien chargée (en "mode" shared si vous voulez savoir)
J'ai même vérifier dans le dossier /etc/apache2/mod_enabled (ou un dossier qui veut dire la même chose... -dsl pour toutes ses imprécision, mais mon accès internet est toujours HS, et donc je fait ça de mémoire dans un cyber-) et un fichier pour le mod rewrite et bien présent qui charge un .so correspondant.
Mais je vais reformuler mon soucis, en fait avant de faire marcher la réécriture, la première chose à faire serait de réussir à faire reconnaitre le .htaccess, ce qui ne semble pas être le cas, puisque comme dit précédemment une erreur de syntaxe dans le .htaccess ne provoque pas d'erreur 500...

ViPHP
ViPHP | 5924 Messages

29 oct. 2007, 18:51

Un problème dans le nom du .htaccess, dans les chmod ?
C'est bien le bon dossier ?
C'est con comme questions mais l'erreur peut être toute conne.

ViPHP
ViPHP | 3607 Messages

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?

ViPHP
ViPHP | 1380 Messages

30 oct. 2007, 13:18

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

ViPHP
ViPHP | 5924 Messages

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.

ViPHP
ViPHP | 3607 Messages

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... :-* )

ViPHP
ViPHP | 5924 Messages

31 oct. 2007, 11:46

bah avec rm :-/

ViPHP
ViPHP | 3607 Messages

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]

ViPHP
ViPHP | 5924 Messages

31 oct. 2007, 11:55

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

ViPHP
ViPHP | 1380 Messages

31 oct. 2007, 19:12

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

ViPHP
ViPHP | 3607 Messages

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... :?