Programmazione.it v6.4
Ciao, per farti riconoscere devi fare il login. Non ti sei ancora iscritto? Che aspetti, registrati adesso!
Info Pubblicità Collabora Autori Sottoscrizioni Preferiti Bozze Scheda personale Privacy Archivio Libri Corsi per principianti Forum
Greenpeace
Gestire URL multilingua e messaggi di errore 404 con lo Zend Framework
Scritto da Luca Marchisio il 19-04-2011 ore 07:57
Intel Parallel Studio XE
Combinando il sistema di routing del componente Zend_Controller e il modulo Zend_Locale, lo Zend Framework permette di utilizzare dei translated segment per la composizione delle stringhe utilizzate negli URL. In questo modo è possibile ottenere degli URL search engine friendly and human readable espressi nelle lingua specifica propria del contenuto cui sono riferiti.

Nel caso in cui un utente cerchi di accedere a una risorsa mediante un URL composto in una lingua differente da quella di default dell'applicazione, se il client utilizzato dall'utente non ha memorizzato in un cookie o in una sessione dati relativi al contenuto locale, può accadere che il sistema di routing dell'applicazione si trovi a inviare all'utente il messaggio di errore 404.

Questo comportamento è dovuto al fatto che il meccanismo di routing, nel caso in particolare, dipende dal locale e non potendone individuare uno differente viene preso in considerazione quello di default, portando al non riconoscimento della stringa localizzata utilizzata nell'URL richiesto.

In un articolo pubblicato recentemente sul proprio blog, Robert Basic suggerisce un hack per evitare questo tipo di inconvenienti; i suggerimenti sono frutto dell'esperienza e del tempo che l'autore ha trascorso confrontandosi con il sistema di routing multilingua messo a disposizione dallo Zend Framework. Nel contributo citato, Basic propone di sopperire all'eventuale assenza di un cookie contenente l'impostazione della lingua locale attribuendo a un front controller plug-in – illustrato mediante alcune righe di codice — il compito di modificare il locale mediante l'hook del postDispatch.
Precedente: Gli algoritmi di machine learning in OpenCV: face detection e Haar classifier
Successiva: Un tutorial per usare codice C con Android
Copyright Programmazione.it™ 1999-2013. Alcuni diritti riservati. Testata giornalistica iscritta col n. 569 presso il Tribunale di Milano in data 14/10/2002. Pagina generata in 0.23 secondi.