< Browse > Home / Informatique / Blog article: Corriger le comportement du composant SEF sur Joomla 1.5 (OVH)

| Mobile | RSS

Corriger le comportement du composant SEF sur Joomla 1.5 (OVH)

August 24th, 2008 | 24 Comments | Posted in Informatique

Cet article fait suite à un problème rencontré de manière récurrente par les utilisateurs de Joomla 1.5  et hébérgés sur OVH (mais aussi probablement sur d’autres hébergeurs). Deux problèmes sont traités dans ce billet.

Problème d’affichage :

Vous possédez un site hébergé sur un serveur mutualisé avec certaines règles dans Apache qui vous empêche d’utiliser correctement l’URL Rewriting de Joomla 1.5? Chez moi ce fut le cas. Le texte et le contenu était présent, mais les images de mon template ainsi que mes css n’étaient pas trouvés (erreur 404) et je me retrouvais avec une mise en page horrible. Pour régler le problème, il faut fixer un petit bug inhérent à Joomla.

Editez le fichier /include/application.php à la ligne 108 et remplacez :

$document->setBase(JURI::current());

par

$document->setBase(JURI::base());

A la suite de cela, il faut aussi vérifier le fichier configuration.php, à la racine de votre site, pour qu’il contienne  la bonne information sur votre adresse de base. Renseignez la variable $live_site à la ligne 19 avec l’adresse de base de votre site (pour ma part http://jice.lavocat.name). Normalement tout redevient dans l’ordre. Sinon, postez un commentaire.

Problème de duplicate content et d’urls non maitrisées:

Un autre problème peut survenir si vous êtes hébergés par exemple sur un serveur mutualisé OVH. Comme Joomla ne sais pas sur quelle version de php il tourne, il rajoute dans la première page appelé de votre site, des bouts d’URL très moches. Par exemple, mon site possédait des URL rewrités sous la forme : mapage?d6002d3c23a7b32546bd03e1985537da=584db87785da0f3151aff0a3b3a…

Le gros problème vient du fait que google va donc indexer cette URL. Un plus gros problème encore, est que ces URL sont différentes à chaque accès. En utilisant Crawltrack je me suis rendu compte que googlebot accédait à ma page plus de 25 000 dans la même journée. Outre une saturation de mon serveur, cela induit forcément du duplicate content de mon site web. Ainsi, il serait désindexé très rapidement.

La solution? Essayer de régler ce problème. Suite à une longue recherche infructueuse, je vous livre la solution trouvée au hasard sur un forum de Joomla. Il faut que vous rajoutiez une petite ligne à votre .htaccess à la base de votre site web.

SetEnv PHP_VER 5

Normalement le problème est réglé. Vérifier que vos URL sont jolies sur ce site web : RankQuest

Share this article :
  • Wikio
  • FriendFeed
  • Facebook
  • Google Bookmarks
  • Twitthis
  • del.icio.us
  • Digg
  • Mixx
  • blogmarks
  • Technorati
  • StumbleUpon
  • Scoopeo
  • MySpace
Leave a Reply 1241 views, 1 so far today |
Tags: , ,
Follow Discussion

24 Responses to “Corriger le comportement du composant SEF sur Joomla 1.5 (OVH)”

  1. Jordan Says:

    Excellent mec
    Astuce introuvable. Hebergé en mutualisé sur OVH j’avais
    ce problème et j’arrivais pas à le résoudre…
    Juste cette ligne au
    debut du .htaccess et c’est réglé 

    Mille merci.

    Pour info: http://www.aceir-expertisesimmobilieres.com

  2. Fabrice Says:

    Salut,

    Bravo pour cette superbe trouvaille.

    Moi en fait il me faisait péter
    une erreur 404 lorsque je souhaitait faire afficher les galeries dispo de
    Morfeoshow via le TopMenu ( URLs explicites (SEF) activées).
    Soi je me
    débarrassait de SEF, soit de Morfeoshow et il n’y avait pas moyen, ni l’un ni
    l’autre !!

    Donc le tuto «Problème d’affichage : » executé en entier.

    Merci
    bien !

    Bonne continuation

  3. Jice Says:

    Merci pour vos commentaires à tout deux.

    A bientôt sur le net

  4. Pascal Says:

    Plus de 10 heures de recherche et enfin une explication qui fonctionne !
    BRAVISSIMO.

    Bonne continuation

  5. GoSub Says:

    Explications claires Mille mercis pour partager cette solution qui m’a permis
    d’avoir des liens bien propres et plus ce satané problème d’affichage niveau
    template.

  6. Miss Vitriol Says:

    merci pour cette explication!
    j’ai juste une petite question qui pourra vous
    paraitre bête mais je ne m’y connais que très peu en code … est ce que
    je peux mettre cette ligne n’importe où dans le fichier .htacces ou faut il la
    mettre à un endroit particulier?
    Merci de votre réponse

  7. Miss Vitriol Says:

    une étourderie : jordan repond en fait à cette question! “au début du
    fichier”
    hop, je m’en vais discretement, personne n’a remarqué ma presence

  8. David Says:

    Bonjour,
    je post ici en désespoir de cause car je ne trouve pas de solution à
    mon prob.
    Je réalise un site pour un opticien :
    http://optique-port-louis.com
    Il y a un header flash présent sur toutes les
    pages mais sur la page du formulaire le bandeau n’apparaît pas. Cela vient de
    la réécriture d’url inutilisable pour ce module je pense.
    Je constate que vous
    êtes assez câlé en php, peut-être pourrez-vous m’aider à résoudre mon
    souci.
    Merci d’avance.
    PS: j’ai essayé $document->setBase(JURI::base()); et
    $live_site, mais cela n’a rien donné. Mon site est déjà en php5.

  9. Jice Says:

    Il y a en effet un problème de réécriture qui a l’air d’apparaitre. Dans le code source de la page on voit apparaitre

    Code:

    Notice: Undefined variable: td_template_path in
    /homez.42/optiquep/www/templates/daydream/index.php on line 26

    /dreamin1.swf?xml=

    Le module va donc chercher le fichier index.php du template… peut tre est-ce cela qui plante. Essayez de donner à votre flash une adresse absolue et non relative dans la configuration de votre header. Come ça le bandeau cherchera toujours l’adresse :
    http://optique-port-louis.com/dreamin1.swf

    p s : pour en savoir un peu plus sur le rewriting j’ai mis un site (que je n’ai pas mis à jour depuis un moment) sur le mod-rewrite :
    http://www.apache-mod-rewrite.fr

  10. David Says:

    Et bien effectivement, c’était ça. Après coup, on se demande toujours comment
    on a fait pour ne pas voir l’erreur.
    Du coup, je vais aller jeter un oeil sur
    http://www.apache-mod-rewrite.fr
    Merci beaucoup de m’avoir retiré cette épine
    du site !!!

  11. Simon Says:

    1 an que je cherchais ( à vrai dire pas assidument). Mes sous-menus plantaient
    avec SEF.
    je me suis fais chambrer hier, du coup je m’y met ce matin. recherche
    google, “SEF bug avec les sous-liens joomla 1.5″ et je tombe sur ce
    bugligne 108 . Résolu

  12. Jojo Says:

    merci mec tu déchire tu m’as sauvé la vie, moi qui me prenais la tête avec
    mon .htaccess

  13. sylvain Says:

    Merci beaucoup pour cette explication, j’ai réussi du coup avec le composant
    raf cloud et artform qui me posait problème.

    Merci beaucoup

  14. Bruno Says:

    To the point! dans mon cas, affichage défaillant des pages accédées via le split menu. Merci pour ce conseil judicieux.

  15. Yannick Gaultier/shumisha Says:

    Bonjour
    Un peu tard pour commenter, mais juste pour info, dans un cas comme dans l’autre, il ne s’agit absolument pas de de bug ou de problème dans Joomla.
    Pour les images ou css qui disparaissent, le ou les bugs se situent dans les templates, ou dans les extensions utilisées, qui malheureusement commettent fréquemment l’erreur d’utiliser des url relatives au lieu d’absolue pour ces liens. Le correctif proposé introduit en fait un bug, mais les deux se compensent et c’est pour ça que ça marche dans le cas de templates ou extensions buggées. Je ne vous recommande pas de l’appliquer sur votre site, car cela risque de casser d’autres choses.
    Pour ce qui concerne l’apparition de choses comme d6002d3c23a7b32546bd03e1985537da=584db87785da0f3151aff0a3b3a dans vos url, le “coupable” dans ce cas n’est toujours pas joomla mais votre server web (ce n’est pas Joomla qui rajouted6002d3c23a7b32546bd03e1985537da=584db87785da0f3151aff0a3b3a, c’est PHP, afin de gérer les sessions)
    La version de PHP ne joue pas non plus, le problème est le même en php 4 et 5. Le réglage de PHP concerné est session.use_trans_sid, qui doit être mal réglé chez OVH en php 4, et bien réglé en PHP. Voir http://forum.ovh.com/archive/index.php/t-6195.html par exemple, pour des solutions.
    Cordialement

  16. OSC Says:

    Simplement : merci.

  17. Kerna Says:

    Bonjour :)
    Merci, merci, merci !!!
    Tout fonctionne à merveille :)
    Très bon travail ;)

  18. Kyrian Says:

    Un immense merci, franchement ça fait 2 ou 3 mois que je cherchais l’astuce. Il faudrait publier ce tuto sur tous les gros sites joomla. Merci d’avoir pris le temps de le rédiger et de l’expliquer si simplement pour les novices :o )
    Bonne soirée/journée

  19. Jice Says:

    @shumisha : Merci pour l’explication. C’est intéressant de savoir d’où venait le problème en vrai.

  20. Denilson Says:

    Merci ça fait 2 mois que tournez en rond sans solution, ça fait zizir !!!
    Un grand BigUp à toi “jice” ;)

  21. Jice Says:

    Merci denilson .. au passage (j’espère que c’est pas à cause de mes manips) tu as ton composant d’annuaire (sobi2) qui fait un peu merder ta page ;-)

  22. athome08 Says:

    Merci beaucoup pour la résolution du problème SEF chez OVH.
    Après des heures de recherches, la seule solution complète et qui fonctionne !
    Merci encore

  23. Ben Says:

    Merci de m’avoir fait économiser quelques heures de “spéléologie” dans le module SEF…
    et bravo pour ce post

  24. Jice Says:

    De rien, bon courage à toi pour le développement de ton site :-)

Leave a Reply

Additional comments powered by BackType

BergerieBergerie2Citadelle de CalviParc enfantManègeÔ la vache!Messy PowerOlskoolCustomizationPower is Religion