59 messaggi dal 12 febbraio 2016
Buongiorno a tutti, ho un dominio su aruba e dopo aver installato il certificato di sicurezza per l'https ho scritto questo codice nel web.config per effettuare il redirect in maniera automatica (da http://www... a https://www...):

  <system.webServer>
    <rewrite>
      <rules>
        <clear />
        <rule name="Redirect to https" stopProcessing="true">
          <match url=".*" />
          <conditions>
            <add input="{HTTPS}" pattern="off" ignoreCase="true" />
          </conditions>
          <action type="Redirect" url="https://{HTTP_HOST}{REQUEST_URI}" redirectType="Permanent" appendQueryString="false" />
        </rule>
      </rules>
    </rewrite>
  </system.webServer>


Il redirect funziona benissimo solo che mentre navigo sul sito web perdo il "www", ottengo sempre un indirizzo tipo: https://nomedominio.it
Da cosa dipende? Come faccio a far rimanere anche il www?
Grazie
10.907 messaggi dal 09 febbraio 2002
Contributi
Ciao Piero,
la regola che stai usando preserva il nome host che era stato digitato dall'utente.
Per esempio, se apro una nuova tab nel browser e scrivo "nomesito.it", verrò reindirizzato su "nomesito.it" con protocollo HTTPS.
Allo stesso modo, se digito "www.nomesito.it", verrò reindirizzato su "www.nomesito.it" con protocollo HTTPS. Ti risulta?

Tu vuoi forzare la ridirezione verso il nome host "www.nomesito.it" anche se l'utente aveva digitato "nomesito.it"?

ciao,
Moreno

Enjoy learning and just keep making
59 messaggi dal 12 febbraio 2016
BrightSoul ha scritto:

Allo stesso modo, se digito "www.nomesito.it", verrò reindirizzato su "www.nomesito.it" con protocollo HTTPS. Ti risulta?

Si esatto, veramente mi sono accorto ora di questo, grazie!


Tu vuoi forzare la ridirezione verso il nome host "www.nomesito.it" anche se l'utente aveva digitato "nomesito.it"?

A questo punto forse non avrei bisogno perché anche se condivido l'url con il www questo funziona comunque. Al max potrebbe servirmi a livello SEO.

Come potrei forzare il redirect con il www?
10.907 messaggi dal 09 febbraio 2002
Contributi

Come potrei forzare il redirect con il www?


La soluzione più facile è questa: anziché usare il segnaposto {HTTP_HOST}, usa direttamente www.nomesito.it.

 <system.webServer>
    <rewrite>
      <rules>
        <clear />
        <rule name="Redirect to https" stopProcessing="true">
          <match url=".*" />
          <conditions>
            <add input="{HTTPS}" pattern="off" ignoreCase="true" />
          </conditions>
          <action type="Redirect" url="https://www.nomesito.it{REQUEST_URI}" redirectType="Permanent" appendQueryString="false" />
        </rule>
      </rules>
    </rewrite>
  </system.webServer>



Però, se il tuo sito deve essere raggiungibile da vari nomi host, bisogna usare una soluzione più raffinata.

ciao,
Moreno

Enjoy learning and just keep making
59 messaggi dal 12 febbraio 2016

Però, se il tuo sito deve essere raggiungibile da vari nomi host, bisogna usare una soluzione più raffinata.


Cosa intendi per vari nomi host? Il sito web è sempre uno: www.nomesito.it
10.907 messaggi dal 09 febbraio 2002
Contributi
Alcune applicazioni web, specialmente quelle multitenant (cioè che offrono un servizio a svariati clienti) hanno come requisito quello di essere raggiungibili con vari nomi host, come ad esempio www.nomesito.it, www.nomesito.com, app.dominiotenant.it, altrodominio.it, e così via. Il nome host con cui si raggiunge l'applicazione web è di solito una discriminante sui contenuti da visualizzare.

Dato che non è questo il tuo caso, la soluzione che ti ho postato andrà bene.
Modificato da BrightSoul il 31 agosto 2018 08.52 -

Enjoy learning and just keep making

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.