Como redirecionar https://domain.com para https://www.domain.com usando o IIS?

4

Eu tenho uma configuração 301 que redireciona o link para o link ( link $ S $ Q) mas se eu navegar para http s : //domain.com I obter um erro SSL (como espera www.domain.com).

Existe alguma maneira de redirecioná-lo antes que o navegador lance um erro de certificado?

    
por Mr. Flibble 29.03.2009 / 18:49

5 respostas

6

Sim, mas não como você pensa.

  • Você precisará de um certificado válido para domain.com
  • Você precisará do domínio.com e www.domain.com para ter endereços IP públicos separados

Se você não pode fazer isso, você está sem sorte, infelizmente. Você não pode usar cabeçalhos HOST para diferenciar entre as duas solicitações, porque isso é tarde demais (assim, endereços IP separados). E a menos que você tenha um certificado válido, o navegador vai engasgar, então você também precisa do segundo certificado.

Não há como superar esses requisitos, receio.

    
por 29.03.2009 / 19:09
1

Eu tinha exatamente a mesma exigência, como redirecionar todo o link para o link e também redirecionar todos os http para https, aqui como consegui e fazê-lo funcionar o IIS 8.5. Eu usei o seguinte código no arquivo web.config:

<system.webServer>
  <!--Maybe some other settings-->
      <rewrite>
          <rules>
              <rule name="http to https" stopProcessing="true">
                  <match url="(.*)" />
                  <conditions>
                      <add input="{HTTPS}" pattern="^OFF$" />
                  </conditions>
                  <action type="Redirect" url="https://{HTTP_HOST}/{R:1}" redirectType="SeeOther" />
              </rule>
              <rule name="Redirect to www" patternSyntax="Wildcard" stopProcessing="true">
                 <match url="*" />
                 <conditions>
                   <add input="{HTTP_HOST}" pattern="yourdomainname.com" />
                 </conditions>
                 <action type="Redirect" url="https://www.yourdomainname.com/{R:0}" />
              </rule>
          </rules>
      </rewrite>
  <!--Maybe some other settings-->
</system.webServer>

Isso funcionou como charme. Na verdade, eu criei o código acima no web.config instalando o "URL Rewrite Module" usando o Web Platform Installer. Após a instalação, encontrei este módulo no IIS 8.5 e adicionei novas regras. Espero que você possa escrever diretamente este código no seu web.config para fazer as coisas.

    
por 09.12.2015 / 09:18
0

Existe uma maneira de contornar isso. Você pode obter um único certificado para ambos os sites, www.dominio.com e domain.com. Então você pode usar um redirecionamento regular. Esses certificados de vários domínios são geralmente mais caros.

    
por 24.11.2009 / 16:36
0

Eu configurei os dois domínios, cada um com seus próprios arquivos conf, certificado (compartilhado) e diretórios iniciais separados e, em seguida, adicionei uma atualização meta html no index.html em domain.com para redirecionar para www.domain.com. Funciona, mas talvez haja uma maneira melhor.

    
por 03.12.2018 / 18:01
0

No certificado para www.domain.com, você precisará adicionar uma entrada de SAN para domain.com. Seu emissor irá reemitir o certificado. O certificado funcionará para o nome assim que for adicionado como SAN ao certificado.

Uma entrada SAN é um nome alternativo de assunto. Você pode adicionar várias SANs a um certificado.

Mais informações: link

    
por 03.12.2018 / 18:16