Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
Bonjour,
J'ai mis en ligne, un site internet (http://www.chateaunodot.com).
Seul problème quand je fais une recherche Google en tapant Château Nodot, mon lien apparait bien numéro 1 mais accompagné d'une belle erreur Zend :
Fatal error: Uncaught exception 'Zend_Locale_Exception' with message 'Autodetection of Locale has been failed!' in /homez.110/chateaunc/library/Zend/Locale.php:926 Stack trace: #0 /homez.110/chateaunc/library /Zend/Locale.php(189): Zend_Locale::_prepareLocale('browser') #1 /homez.110/chateaunc/application /bootstrap.php(19): Zend_Locale->__construct('browser') #2 /homez.110/chateaunc/www/index.php(9): require('/homez.110/chat...') #3 {main} thrown in /homez.110/chateaunc/library/Zend/Locale.php on line 926
Alors que lorsqu'on clique sur le site, aucun problème. Je suis débutant quelqu'un pourrait-il m'expliquer ???
Merci d'avance,
Dernière modification par Matcrash (10-06-2009 15:15:47)
Hors ligne
Hello,
Comment initialises-tu ta locale ?
Zend_Registry::set('Zend_Locale', new Zend_Locale());
A+
Hors ligne
Je t'avoue que je ne sais plus, je vérifirai ce soir.
Là je suis au boulot et je viens de m'en rendre compte
et par peur que sa impacte sur mon référencement et
dans la précipitation j'ai tout de suite posté sur le forum...
Désolé.
Hors ligne
J'ai fait quelques simulations et apparemment cela n'est pas dépendant de GoogleBot, cela se produit aussi avec YahooBot et MsnBot.
Hors ligne
Alors en fait j'ai vérifié et voilà exactement ce que je fais :
switch($language){ case "en": Zend_Registry::set('locale','en'); break; case "fr": Zend_Registry::set('locale','fr'); break; }
Hors ligne
Salut,
Peut-être devrait-tu rajouter le cas 'default' dans ton switch afin de définir la langue à utiliser si l'on n'est pas dans l'un de ces deux cas.
switch($language){ case "en": Zend_Registry::set('locale','en'); break; case "fr": default: Zend_Registry::set('locale','fr'); break; }
Florent
Dernière modification par tonton flubb (08-06-2009 22:15:10)
Hors ligne
Je suis bête, tu as tout à fait raison tonton flubb, je teste cela dès ce soir.
Malheureusement au boulot, les ports FTP sont bloqués
Hors ligne
alors j'ai résolu le problème, pour information cela venait d'un autre endroit. Dans le Bootstrap, je mettais :
if(!isset($langue_session->present)){ $locale = new Zend_Locale(Zend_Locale::BROWSER); if($locale != 'fr' && $locale != 'en' && $locale != 'it' && $locale != 'zh'){ $default_language = 'fr'; }else{ $default_language = $locale; } Zend_Registry::set('locale',$default_language); Zend_Session::start(); $langue_session->present = true; $langue_session->value = $default_language; }
Forcément le Bot ne passant pas par un navigateur...
Je l'ai donc changé en :
if(!isset($langue_session->present)){ try { $locale = new Zend_Locale(Zend_Locale::BROWSER); }catch(Zend_Locale_Exception $e){ $locale = 'fr'; } if($locale != 'fr' && $locale != 'en' && $locale != 'it' && $locale != 'zh'){ $default_language = 'fr'; }else{ $default_language = $locale; } Zend_Registry::set('locale',$default_language); Zend_Session::start(); $langue_session->present = true; $langue_session->value = $default_language; }
Et voilà, plus de problème. En tous cas merci pour votre aide.
Hors ligne
Vous semblez possèder une excellente maîtrise du sujet! Merci beaucoup.
Pret immobilier
Dernière modification par AlbertJohn (06-08-2009 14:06:25)
Hors ligne
Pages: 1