yankey Posté 6 Juin 2006 Posté 6 Juin 2006 Bonjour, Je me prend la tête sur un fichier htaccess. qui fonctionne trés bien chez un hébergeur x en mutualisé, mais qui refuse complètement de s'exécuter sur un autre serveur en semi-dédié. L'hébergeur m'assure que cela provient de mon fichier, et je ne vois pas du tout comment je pourrai le vérifier... Voici le code: ErrorDocument 401 http://www.site.com/repertoire/404.phpErrorDocument 403 http://www.site.com/repertoire/404.phpErrorDocument 404 http://www.site.com/repertoire/404.phpRewriteEngine OnOptions -IndexesOptions +FollowSymlinksRewriteRule ^http://www.site.com/repertoire/annonce-(.+)\.html$ http://www.site.com/repertoire/annonce.php?libelle=$1 [L] le fichier est bien prix en compte par le serveur, puisque la page d'erreur remonté en cas de fausse url est bien le bon fichier 404.php, par contre la réécriture ne fonctionne pas. J'ai vérifié sur php.info, le mode rewriting est bien activé. Est-ce que quelqu'un voit l'erreur ? Merci beaucoup
TheRec Posté 6 Juin 2006 Posté 6 Juin 2006 Bonjour, la première partie d'une RewriteRule DOIT être un chemin relatif (au répertoire courant, ou à la RewriteBase) et non une URL complète... La seconde en revanche, PEUT être une URL, mais dans ce cas la réécriture devient une redirection...(sinon cela signifierait qu'il serait possible de masquer l'URL d'un site et présenter son contenu). Généralement c'est aussi un chemin relatif...surtout dans ton cas, tu semble vouloir atteindre des fichiers étant hébergés sur le même domaine, donc à priori sur le même espace d'hébergement. Essaie peut-être ceci, dans le répertoire "repertoire", place ce même fichier .htaccess mais en modifiant la RewriteRule ainsi : RewriteRule ^annonce-(.+)\.html$ annonce.php?libelle=$1 [L] Tu seras peut être amené à mettre le chemin complet vers tes fichiers...cela dépend de ta configuration Apache, dans ce cas à toi d'ajouter le répertoire avant le nom de fichier dans la règle de réécriture. Bonne continuation.
yankey Posté 7 Juin 2006 Auteur Posté 7 Juin 2006 Oh ben c'était tout bête comme d'habitude... le bon code est: RewriteRule ^annonce-(.+)\.html$ /annonce.php?libelle=$1 [L] c'est juste le / qui manquait devant annonce.php... sans ça marche pas, avec ça marche Bonne journée
Dan Posté 7 Juin 2006 Posté 7 Juin 2006 Oh ben c'était tout bête comme d'habitude...le bon code est: RewriteRule ^annonce-(.+)\.html$ /annonce.php?libelle=$1 [L] c'est juste le / qui manquait devant annonce.php... sans ça marche pas, avec ça marche Bonne journée C'est que tu es en mutualisé chez OVH, non ?
TheRec Posté 7 Juin 2006 Posté 7 Juin 2006 Et donc, de rien... c'est "tout bête", mais ça tombe pas du ciel quand même. Ce n'est pas que je sois en manque de mercis, mais c'est une question de politesse.
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant