2015-06-15 21 views
6

Il mio problema è in realtà vicino a questo: Umbraco V6 404 not handled properly according to cultureUmbraco 404 con cultura diversa non funziona

Ho 2 directory con cultura diversa:

Content 
     EN 
      page1 
      page2 
      404 
     FR 
      page1 
      404 

Quando vado da una pagina FR ad un 404, la cultura è tornata in inglese.

Sembra che sia basato su url e probabilmente con un 404 il motore non riesce a trovare un collegamento, quindi imposta la cultura come predefinita, ma vorrei mantenere questa cultura quando l'utente incontra una pagina 404.

mia configurazione:

<error404> 
     <errorPage culture="en-US">1187</errorPage> 
     <errorPage culture="fr-FR">1189</errorPage> 
    </error404> 

Come posso fare questo?

Utilizzo un percorso a livello singolo nei domini.

Esempio di URL:

  • sito/it/page1
  • sito/it/page2
  • sito/fr/page1

Io uso umbraco 7.2.5

+0

si può tentare di annullare la pubblicazione la struttura del nodo 'EN' e testare il reindirizzamento' FR' alla pagina FR 404? – Mivaweb

+0

L'ho fatto. Non sono reindirizzato alla pagina 404 di fr. – Giu

+0

Alla pagina 404 predefinita o alla quale pagina viene reindirizzato ora? – Mivaweb

risposta

1

Dopo aver letto su diversi forum ho scoperto che questo è un problema comune. Ma c'è un post sullo Umbraco Wiki che forse può aiutarti.

Questo post contiene informazioni su come scrivere il proprio 404 handler. Basta creare una nuova classe che erediti dall'interfaccia umbraco.interfaces.INotFoundHandler che definisce due proprietà e un metodo che deve essere incluso nella classe.

0

vecchia questione, ma questo funziona su Umbraco 7.x

umbracoSettings.config

<errors> 
    <error404> 
    <errorPage culture="default">1332</errorPage> 
    <errorPage culture="en-US">1332</errorPage> 
    <errorPage culture="sv-SE">1185</errorPage> 
    </error404> 
</errors> 

web.config

Aggiungi qui sotto per <system.webServer>

<httpErrors existingResponse="PassThrough"/>