<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Posizionamento sito multilingua e sitemap]]></title><description><![CDATA[<p dir="auto">Ciao ragazzi,<br />
un sito, o meglio, un insieme di siti sviluppati con una nostra piattaforma, stanno incontrando<br />
difficoltà a posizionarsi, anzi ad essere proprio indicizzati per l'inglese.<br />
In particolare vi riporto questo sito<br />
<a href="http://vacanze.net" rel="nofollow ugc">vacanze.net</a></p>
<p dir="auto">Questo sito è posizionato in italiano, ma l'inglese non viene proprio indicizzato da google.</p>
<p dir="auto">Sapete dirmi da cosa può dipendere?</p>
<p dir="auto">Ho letto un pò in giro che poteva essere conveniente inviare più sitemap per ogni lingua.<br />
E' corretto procedere così secondo voi?</p>
<p dir="auto">Grazie mille!<br />
Guido</p>
]]></description><link>https://connect.gt/topic/204112/posizionamento-sito-multilingua-e-sitemap</link><generator>RSS for Node</generator><lastBuildDate>Thu, 18 Jun 2026 11:13:38 GMT</lastBuildDate><atom:link href="https://connect.gt/topic/204112.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 15 Jul 2014 15:26:50 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Posizionamento sito multilingua e sitemap on Fri, 18 Jul 2014 11:35:02 GMT]]></title><description><![CDATA[<p dir="auto">hai ragione, ormai ti ho scritto proprio codice .net <img src="https://connect.gt/plugins/nodebb-plugin-emoji/emoji/android/1f604.png?v=pjkabbjvlkk" class="not-responsive emoji emoji-android emoji--smile" title=":D" alt="😄" /></p>
<p dir="auto">Per quanto riguarda i possibile errori su immagini o altro ho verificato e sembra andare bene<br />
<a href="http://vacanze.net/images/logo.png" rel="nofollow ugc">vacanze.net/images/logo.png</a><br />
Ci sono alcuni casi in cui generava errore, non li ho inclusi nel codice che ti ho scritto per non appensatire il post con altro codice inutile <img src="https://connect.gt/plugins/nodebb-plugin-emoji/emoji/android/1f609.png?v=pjkabbjvlkk" class="not-responsive emoji emoji-android emoji--wink" title=";)" alt="😉" /></p>
<p dir="auto">Grazie mille, il tuo aiuto è stato preziozo, inoltre ho scaricato il tuo programma visual seo studio che approfondirò sicuramente!!</p>
]]></description><link>https://connect.gt/post/1167214</link><guid isPermaLink="true">https://connect.gt/post/1167214</guid><dc:creator><![CDATA[zseven]]></dc:creator><pubDate>Fri, 18 Jul 2014 11:35:02 GMT</pubDate></item><item><title><![CDATA[Reply to Posizionamento sito multilingua e sitemap on Fri, 18 Jul 2014 11:11:29 GMT]]></title><description><![CDATA[<p dir="auto">Stiamo andando un po' OT <img src="https://connect.gt/plugins/nodebb-plugin-emoji/emoji/android/1f609.png?v=pjkabbjvlkk" class="not-responsive emoji emoji-android emoji--wink" title=";-)" alt="😉" /></p>
<p dir="auto">OK, capisco tu abbia voluto tenere la lingua in Session per minimizzare le modifiche, e ti limiti a impostarla a ogni inizio richiesta.<br />
A colpo d'occhio direi:</p>
<ul>
<li>occhio che a seconda di come hai impostato IIS e la sua versione, gli eventi BeginRequest e AcquireRequestState potrebbero scattare anche per risorse non .aspx (css, script, immagini, etc..)</li>
<li>robustezza: l'utente potrebbe chiedere un URL con RawUrl.Length minore di 6 (root, immagini, url scritto male, etc..) e il Substring causerebbe un'eccezione</li>
<li>robustezza: i caratteri da 1 a 5 potrebbero non rappresentare una Culture valida (immagini, url scritto male, etc..)</li>
</ul>
<p dir="auto">Ciao</p>
]]></description><link>https://connect.gt/post/1167222</link><guid isPermaLink="true">https://connect.gt/post/1167222</guid><dc:creator><![CDATA[federico.sasso]]></dc:creator><pubDate>Fri, 18 Jul 2014 11:11:29 GMT</pubDate></item><item><title><![CDATA[Reply to Posizionamento sito multilingua e sitemap on Fri, 18 Jul 2014 10:32:30 GMT]]></title><description><![CDATA[<p dir="auto">Allora dovrei esserci riuscito, utilizzando i tuoi preziosissimi suggerimenti ma senza abbandonare la session in quanto mi costringeva a modificare tutte le piattaforma.</p>
<p dir="auto">Penso che questo ragionamento che ho impostato possa funzionare, te lo riporto di seguito così se mi dai un parere mi fa piacere.</p>
<p dir="auto">**    Dim LinguaDaURL As String</p>
<pre><code>Sub Application_BeginRequest(sender As Object, e As EventArgs)

    LinguaDaURL = Request.RawUrl.Substring(1, 5)

End Sub

Sub Application_AcquireRequestState(sender As Object, e As EventArgs)

    If HttpContext.Current.Session("Lingua") Is Nothing Then
        HttpContext.Current.Session("Lingua") = Thread.CurrentThread.CurrentCulture.ToString
    End If

        If HttpContext.Current.Session("Lingua") &lt;&gt; LinguaDaURL Then
            HttpContext.Current.Session("Lingua") = LinguaDaURL
        End If

End Sub**
</code></pre>
<p dir="auto">Come puoi vedere prima mi vado a verificare come mi hai suggerito l'URL.<br />
Poi vado a gestire il caso successivamente assegnando la cultura del visitatore alla sezione, nel caso sia vuota, e verificando se corrisponde alla lingua dell'url.</p>
<p dir="auto">Così facendo restituisco sempre le url corrette in qualsiasi parte del sito si arrivi, e sono anche riuscito a recuperare l'intero sito per la sitemap, inglese compreso!</p>
<p dir="auto">Grazie mille!</p>
]]></description><link>https://connect.gt/post/1167211</link><guid isPermaLink="true">https://connect.gt/post/1167211</guid><dc:creator><![CDATA[zseven]]></dc:creator><pubDate>Fri, 18 Jul 2014 10:32:30 GMT</pubDate></item><item><title><![CDATA[Reply to Posizionamento sito multilingua e sitemap on Wed, 16 Jul 2014 18:13:13 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="https://connect.gt/uid/7520">@zseven</a> said:</p>
<blockquote>
<p dir="auto">Se ho ben capito mi suggerisci di renderli dei semplici "a href" e poi una volta nella directory "/en-US/" impostare qui il codice di assegnazione per la cultura?<br />
Esatto.<br />
Puoi usare il controllo Hyperlink, ma probabilmente troverai più conveniente produrre te gli "A href", perché il controllo <a href="http://ASP.NET" rel="nofollow ugc">ASP.NET</a> non ha conoscenza di come hai implementato l'URL rewriting.</p>
</blockquote>
<p dir="auto">La tua soluzione attuale ha lacune non solo per gli spider, ma anche per utenti bipedi:<br />
Poni i casi in cui l'utente richieda un URL della versione Inglese arrivando da un link da motore di ricerca, o da bookmark, da link in e-mail. Non avrebbe né cookie di lingua né cookie di sessione, scatterebbe una nuova session e se il default è sull'Italiano non sarebbe servito correttamente. La sessione server potrebbe scadere tra una richiesta e l'altra...</p>
<p dir="auto">Un po' di codice nella Application.BeginRequest per gestire la culture corretta in base a Request.RawUrl ti permetterebbe di avere una soluzione più robusta.</p>
<p dir="auto">Inoltre miglioreresti l'esperienza utente allo switch di lingua:<br />
oggi hai un primo postback per processare il codice hai mostrato, e poi una seconda richiesta HTTP per via del redirect.</p>
<p dir="auto">Ciao</p>
]]></description><link>https://connect.gt/post/1167221</link><guid isPermaLink="true">https://connect.gt/post/1167221</guid><dc:creator><![CDATA[federico.sasso]]></dc:creator><pubDate>Wed, 16 Jul 2014 18:13:13 GMT</pubDate></item><item><title><![CDATA[Reply to Posizionamento sito multilingua e sitemap on Wed, 16 Jul 2014 16:39:27 GMT]]></title><description><![CDATA[<p dir="auto">se ho capito bene tu hai anche ottime conosce di .net, quindi magari puoi aiutarmi nel sistemare questa situazione.</p>
<p dir="auto">Mi riallaccio al punto in cui mi parli dei link veri per lo switch della lingua.<br />
Ora sono dei LinkButton, in quanto al click è collegata la seguente Sub</p>
<hr />
<pre><code>Sub CambiaCultura(ByVal sender As Object, ByVal e As EventArgs)

    Dim Pulsante As LinkButton
    Pulsante = CType(sender, LinkButton)

    Session("Lingua") = Pulsante.CommandArgument
    Dim aCookie As New HttpCookie("Lingua")
    aCookie.Values("languagePref") = Session("Lingua")
    aCookie.Expires = System.DateTime.Now.AddDays(21)
    Response.Cookies.Add(aCookie)

    Response.Redirect("/" &amp; Pulsante.CommandName)

End Sub
</code></pre>
<hr />
<p dir="auto">Se ho ben capito mi suggerisci di renderli dei semplici "a href" e poi una volta nella directory "/en-US/" impostare qui il codice di assegnazione per la cultura?</p>
<p dir="auto">Io adesso uso i cookie e le session solo per mantenere lo stato impostato o riconosciuto dalla Culture di .NET.</p>
<p dir="auto">Nel Global.asax infatti ho questo codice iniziale per la determinazione ed il mantenimento della Culture</p>
<hr />
<pre><code>Sub Session_Start(ByVal Sender As Object, ByVal E As EventArgs)
    If Not Request.Cookies("Lingua") Is Nothing Then
        Session("Lingua") = Server.HtmlEncode(Request.Cookies("Lingua")("languagePref"))
        'Response.Write(Request.Cookies("Lingua")("languagePref"))

    Else

        Session("Lingua") = Thread.CurrentThread.CurrentCulture.ToString
        Dim aCookie As New HttpCookie("Lingua")
        aCookie.Values("languagePref") = Session("Lingua")
        aCookie.Expires = System.DateTime.Now.AddDays(21)
        Response.Cookies.Add(aCookie)

    End If
End Sub
</code></pre>
<hr />
<p dir="auto">Ritieni che sia sbagliato?</p>
<p dir="auto">Ti ringrazio moltissimo per l'aiuto, spero di riuscire a risolvere con i tuoi aiuti!</p>
]]></description><link>https://connect.gt/post/1167210</link><guid isPermaLink="true">https://connect.gt/post/1167210</guid><dc:creator><![CDATA[zseven]]></dc:creator><pubDate>Wed, 16 Jul 2014 16:39:27 GMT</pubDate></item><item><title><![CDATA[Reply to Posizionamento sito multilingua e sitemap on Wed, 16 Jul 2014 16:15:07 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="https://connect.gt/uid/7520">@zseven</a> said:</p>
<blockquote>
<p dir="auto">Adesso abbiamo impostato che al caricamento iniziale il valore della Session dipende dalla Culture direttamente.<br />
Quindi così dovrebbe essere corretto.<br />
googlebot non usa cookies, quindi non puoi fare affidamento su variabili di Session (non avresti a disposizione il cookie di sessione per ricostruire la Session associata al visitatore e ogni nuova richiesta dello spider risulterebbe una nuova sessione).</p>
</blockquote>
<p dir="auto">Se accetti il mio modesto consiglio, la lingua corrente non dovresti salvarla in una variabile di Session, ma ricostruirla ogni volta dal formato dell'URL: se inizia con /it-IT/, sia "it-IT"; se inizia con "en-US" sia "en-US".<br />
In <a href="http://ASP.NET" rel="nofollow ugc">ASP.NET</a> si tratta di parsare il valore della proprietà Request.RawUrl</p>
<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="https://connect.gt/uid/7520">@zseven</a> said:</p>
<blockquote>
<p dir="auto">Puoi verificare anche tu se trovi errori adesso?<br />
L'ho esaminato velocemente con Visual SEO Studio (con e senza supporto ai cookies). Ci sono ancora problemi, alcuni nuovi.<br />
Adesso gli URL nella versione inglese comportano dei 404, perché hanno il prefisso /en-US/ ma il path è costruito con la versione Italiana.</p>
</blockquote>
<p dir="auto">Dopo aver messo a posto le logiche di lingua corrente e generazione, ti consiglio di modificare anche lo switch di lingua perché usi dei link "veri", non i javascript di callback. Così forniresti allo spider del motore di ricerca un percorso per trovare anche i contenuti nell'altra lingua.</p>
<p dir="auto">Altro consiglio: cerca di testare il comportamento agli spider localmente prima di mandare in produzione, testando iterativamente le modifiche con lo strumento di SEO auditing di tua scelta.</p>
<p dir="auto">Spero d'esserti stato utile</p>
]]></description><link>https://connect.gt/post/1167220</link><guid isPermaLink="true">https://connect.gt/post/1167220</guid><dc:creator><![CDATA[federico.sasso]]></dc:creator><pubDate>Wed, 16 Jul 2014 16:15:07 GMT</pubDate></item><item><title><![CDATA[Reply to Posizionamento sito multilingua e sitemap on Wed, 16 Jul 2014 15:25:59 GMT]]></title><description><![CDATA[<p dir="auto">Cavolo però se provo a generare la sitemap partendo da <a href="http://vacanze.net/en-US/" rel="nofollow ugc">vacanze.net/en-US/</a> ed escludendo il pattern <em>it-IT</em> non mi trova nulla uffa...</p>
]]></description><link>https://connect.gt/post/1167212</link><guid isPermaLink="true">https://connect.gt/post/1167212</guid><dc:creator><![CDATA[zseven]]></dc:creator><pubDate>Wed, 16 Jul 2014 15:25:59 GMT</pubDate></item><item><title><![CDATA[Reply to Posizionamento sito multilingua e sitemap on Wed, 16 Jul 2014 15:23:12 GMT]]></title><description><![CDATA[<p dir="auto">Ciao e grazie mille per la precisissima risposta!</p>
<p dir="auto">Come hai detto giustamente tu il reindirizzamento lo faceva, erroneamente, basandosi sul cookie creato in base alla cultura impostata e la session Lingua valorizzata (solo dopo il postback).</p>
<p dir="auto">Adesso abbiamo impostato che al caricamento iniziale il valore della Session dipende dalla Culture direttamente.<br />
Quindi così dovrebbe essere corretto.</p>
<p dir="auto">Abbiamo infatti provato a mettere a mano il valore per la culture come "en-US" e siamo stati portati correttamente nella sezione inglese.</p>
<p dir="auto">Puoi verificare anche tu se trovi errori adesso?</p>
<p dir="auto">Grazie mille!<br />
Guido</p>
]]></description><link>https://connect.gt/post/1167213</link><guid isPermaLink="true">https://connect.gt/post/1167213</guid><dc:creator><![CDATA[zseven]]></dc:creator><pubDate>Wed, 16 Jul 2014 15:23:12 GMT</pubDate></item><item><title><![CDATA[Reply to Posizionamento sito multilingua e sitemap on Wed, 16 Jul 2014 11:49:10 GMT]]></title><description><![CDATA[<p dir="auto">Ciao zseven,</p>
<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="https://connect.gt/uid/7520">@zseven</a> said:</p>
<blockquote>
<p dir="auto">un sito, o meglio, un insieme di siti sviluppati con una nostra piattaforma, stanno incontrando<br />
difficoltà a posizionarsi, anzi ad essere proprio indicizzati per l'inglese.<br />
In particolare vi riporto questo sito<br />
<a href="http://vacanze.net" rel="nofollow ugc">vacanze.net</a></p>
</blockquote>
<p dir="auto">Questo sito è posizionato in italiano, ma l'inglese non viene proprio indicizzato da google.</p>
<p dir="auto">Prima di tutto, invocando l'indirizzo <a href="http://vacanze.net/" rel="nofollow ugc">vacanze.net/</a> il sito effettua un redirect 302 verso <a href="http://vacanze.net/it-IT" rel="nofollow ugc">vacanze.net/it-IT</a> (e poi un 301 verso /it-IT/); non ho modo di sapere se discriminate in base all'IP dell'utente, di sicuro il primo redirect non è influenzato dalla lingua impostata sul browser (header HTTP "accept-language"): con qualunque valore, o senza alcun valore di accept-language sono stato invariabilmente buttato sulla versione Italiana.<br />
Googlebot non esibisce l'header accept-language e a meno che non lo gestiate diversamente in base a user-agent (non ho controllato) o IP (non posso controllare), vedrebbe anch'esso la versione Italiana.</p>
<p dir="auto">Visitando il sito con uno spider le prime migliaia di pagine questi non ha trovato alcun link verso la versione Inglese. Stessa cosa capiterebbe a googlebot.<br />
La scelta di selezione della lingua è effettuabile dall'utente non con un normale link all'URL Inglese, ma con uno script di postback di <a href="http://ASP.NET" rel="nofollow ugc">ASP.NET</a>, non seguibile dallo spider di Google.</p>
<p dir="auto">Anche esplorando con lo spider esplicitamente /vacanze.net/en-US/, lo spider della versione in Inglese non può vedere che la pagina principale, e tutti i link interni puntano alla versione Italiana degli URL.<br />
Perché? Ho indagato la stranezza e ho l'impressione gli URL interni siano generati nella versione Iglese solo in presenza di un cookie di nome "Lingua" valorizzato a "languagePref=en-US", altrimenti sono generati nella versione Italiana.<br />
Googlebot - e quasi tutti gli altri spider - non usa cookies e vede solo gli URL in Italiano.</p>
<p dir="auto">Puoi confermare tutte questi punti usano lo strumento "Visualizza come Google" dal tuo account di Google Webmaster Tools.<br />
Temo dovrete apportare qualche correzione alla vostra piattaforma.</p>
<p dir="auto">Spero d'esserti stato utile</p>
]]></description><link>https://connect.gt/post/1167215</link><guid isPermaLink="true">https://connect.gt/post/1167215</guid><dc:creator><![CDATA[federico.sasso]]></dc:creator><pubDate>Wed, 16 Jul 2014 11:49:10 GMT</pubDate></item></channel></rss>