Problème de UR sur dédié

Consultez la formation URL Rewriting et sites dynamiques de WebRankInfo / Ranking Metrics

Oubah
WRInaute discret
WRInaute discret
 
Messages: 237
Inscription: 1 Mar 2004

Problème de UR sur dédié

Message le Mer Mar 17, 2004 3:55

Salut,

Je ne comprends pas.

Je suis sur un dédié et j'héberge plusieurs sites dessus.
J'applique l'url rewriting sur un site et tout marche très bien.
J'essaie de l'appliquer sur un autre, avec le même code, sauf que jechange le nom des pages et sur celui-ci, rien ne marche.
Même les redirections toutes cons de toto.php en toto.html en marchent pas !
J'ai essayé de mettre des urls absolus ou simplement le nom des fichiers dans le .htaccess mais même résultat.
J'ai voulu mettre les UR dans le httpd.conf dans le domaine virtuel mais ça n'a pas l'air de fonctionner non plus. Donc je ne vois pas.
Quelquun a-t-il une idée ??

Merci.

Tchinkatchuk
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 291
Inscription: 22 Avr 2003

Message le Mer Mar 17, 2004 18:01

Tu obtiens quel type d'erreur ? 500 ou juste 404, etc.

Oubah
WRInaute discret
WRInaute discret
 
Messages: 237
Inscription: 1 Mar 2004

Message le Mer Mar 17, 2004 18:31

j'obtiens une erreur 404 mais je ne vois pas trop vu que la configuration est identique. A moins qu'il faille activer les htacess pour chaque domaine ? Mais dans ce cas, c'est dans httpd.conf ? dans le virtual host ?

Tchinkatchuk
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 291
Inscription: 22 Avr 2003

Message le Mer Mar 17, 2004 18:56

normalement non.

as tu essayer de faire dans le sens inverse, ie essayer de mettre dans fichier htaccess qui a priori ne marche pas pour tes sites qui marchent et tu verras. TU est sur sur de tes regles parce qu'une 404, ca sent une faute de frappe lol. C ptet con ce que je dit mais ca arrive tellement souvent

Oubah
WRInaute discret
WRInaute discret
 
Messages: 237
Inscription: 1 Mar 2004

Message le Jeu Mar 18, 2004 16:33

ben en fait j'ai récupéré le htaccess de mes fichiers qui marchent, j'ai changé le nom des pages et je l'ai renvoyé sur l'autre site, dans le répertoire adéquat. Et ça ne marche pas. Mais je n'ai fait que changer le nom des pages alors là je ne vois vraiment pas pourquoi ça ne marche pas...

Tchinkatchuk
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 291
Inscription: 22 Avr 2003

Message le Jeu Mar 18, 2004 18:16

si tu es sur de ta syntaxe, alors la je peux rien. Mais je ne suis pas expert, ptet que quelqu'un d'autre peut t'aider ??

simpson
WRInaute discret
WRInaute discret
 
Messages: 70
Inscription: 11 Juil 2003

Message le Ven Mar 19, 2004 8:50

1) Vérifie les logs de ton serveur web...

2) Vérifie la config de ton serveur web, quoi doit avoir :
Code: Tout sélectionner
RewriteEngine On
RewriteOptions inherit


RewriteEngine On pour activer mod_rewrite
RewriteOptions inherit si tu veux que tous les sites profitent du mod_rewrite

Si l'option RewriteOptions inherit n'est pas activée dans la config serveur, tu sera obligé de mettre un RewriteEngine On dans la config de chaque VirtualHost

Extrait de la doc Apache:
Note that, by default, rewrite configurations are not inherited. This means that you need to have a RewriteEngine on directive for each virtual host in which you wish to use it.


RTFM (Read The Fucking Manual)

Oubah
WRInaute discret
WRInaute discret
 
Messages: 237
Inscription: 1 Mar 2004

Message le Ven Mar 19, 2004 13:14

J'ai essayé de rajouter ces deux lignes car elles n'étaient pas dans la config d'Apache mais sans succès. J'ai donc quand même essayé de personnaliser par hote virtuel et j'ai mis ceci :
n'étant pas un expert de l'url rewriting, je suppose qu'il y a des erreurs :

Code: Tout sélectionner
<VirtualHost ***.***.***.***>
DocumentRoot /home/rep/
ServerName www.rep.com
UserDir /home/rep/
RewriteEngine On
RewriteOptions inherit
RewriteRule ^chemin/page-([0-9]*)-?([0-9]*)\.html$ chemin/page.php?id=$1 [L]
</VirtualHost>


J'ai également créé un tag comme celui-ci, spécifique au répertoire dans lequel je voudrais pouvoir disposer de l'url rewrting :

Code: Tout sélectionner
<DirectoryMatch /home/rep/>
Options +FollowSymLinks
AllowOverride All
<IfModule rewrite.c>
RewriteEngine On
RewriteOptions inherit
RewriteRule ^page-([0-9]*)-?([0-9]*)\.html$ page.php?id=$1 [L]
</IfModule>
</DirectoryMatch>


Ou est-ce que ça cloche ?
merci

simpson
WRInaute discret
WRInaute discret
 
Messages: 70
Inscription: 11 Juil 2003

Message le Sam Mar 20, 2004 13:56

Oubah a écrit:
Code: Tout sélectionner
<VirtualHost ***.***.***.***>
DocumentRoot /home/rep/
ServerName www.rep.com
UserDir /home/rep/
RewriteEngine On
RewriteOptions inherit
RewriteRule ^chemin/page-([0-9]*)-?([0-9]*)\.html$ chemin/page.php?id=$1 [L]
</VirtualHost>

Ou est-ce que ça cloche ?


RewriteRule ^chemin/page-([0-9]*)-?([0-9]*)\.html$ chemin/page.php?id=$1 [L]

Le chemin des pages vers laquelle tu rediriges sont des URL relatives incomplètes. Essaye plutot avec des URL relatives correctement formées :
/chemin/page.php?id=$1[L]

D'après ton exemple, les URL redirigées peuvent être :

Code: Tout sélectionner
h**p://www.abc.com/chemin/page-.html
ou
h**p://www.abc.com/chemin/page--.html
ou
h**p://www.abc.com/chemin/page-123.html
ou
h**p://www.abc.com/chemin/page-123-.html
ou
h**p://www.abc.com/chemin/page-123-123.html


Dans tous les cas, une seule variable est transmise, alors que deux champs sont définis.

Je ne sais pas si c'est vraiment ce que tu veux, tant au niveau de la forme des URL qu'au niveau des variables ?

Oubah
WRInaute discret
WRInaute discret
 
Messages: 237
Inscription: 1 Mar 2004

Message le Sam Mar 20, 2004 14:09

Salut, alors pour le fait que soient transmises une ou deux variables, ce n'est pas ici le problème car ce code fonctionne parfaitement sur un autre site. J'utilise le ? pour spécifier justement qu'une ou deux variables peuvent être transmises. Mais certes, je vais quand même enlever la deuxième partie vu qu'elle ne sert a rien.

C'était surtout le / qui manquait devant le chemin, et maintenant ça fonctionne.
je te remercie :)

simpson
WRInaute discret
WRInaute discret
 
Messages: 70
Inscription: 11 Juil 2003

Message le Dim Mar 21, 2004 23:57

Oubah a écrit:Salut, alors pour le fait que soient transmises une ou deux variables, ce n'est pas ici le problème car ce code fonctionne parfaitement sur un autre site. J'utilise le ? pour spécifier justement qu'une ou deux variables peuvent être transmises. Mais certes, je vais quand même enlever la deuxième partie vu qu'elle ne sert a rien.

C'était surtout le / qui manquait devant le chemin, et maintenant ça fonctionne.
je te remercie :)


Pour les variables, c'est surtout une question de clareté et de sécurité dans ton code. Essaie de prendre l'habitude de ne pas laisser trainer du code inutile qui pourrait servir à des personnes malveillantes...

Content pour toi et satisfait d'avoir fait ma BA de l'année !

Bart


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Formation recommandée sur ce thème :

Formation URL Rewriting et sites dynamiques : apprenez comment mettre en place la réécriture d'URL, comment optimiser vos URL et profiter de vos pages dynamiques pour booster votre référencement. Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité