2012-04-14 29 views
12

Tengo un plan de alojamiento compartido con Windows Server 2008 e IIS7.5, y hay un módulo de reescritura de Microsoft instalado y habilitado.Módulo de reescritura de Microsoft - Forzar www en la url O eliminar www de la url

<rewrite> 
    <rules> 
     <rule name="myRule" patternSyntax="Wildcard"> 
      <!--Rewriting code--> 
     </rule> 
    </rules> 
</rewrite> 

Por lo tanto, la forma de redirigir mydomain.com/everywhere-in-site/my-page.html a www.mydomain.com/everywhere-in-site/my-page.html con el módulo de reescritura de Microsoft?

¿Y qué ocurre si quiero redirigir www.midominio.com/everywhere-in-site/my-page.html a mydomain.com/everywhere-in-site/my-page.html?

Respuesta

32

Para retirar la www de un dominio y redirigir a un "dominio simple" Se podría di ella como en el siguiente fragmento de código:

<rewrite> 
    <rules> 
    <rule name="Remove WWW prefix" stopProcessing="true"> 
     <match url="(.*)" ignoreCase="true" /> 
     <conditions> 
     <add input="{HTTP_HOST}" pattern="^www\.yourdomain\.com$" /> 
     </conditions> 
     <action type="Redirect" url="http://yourdomain.com/{R:1}" redirectType="Permanent" /> 
    </rule> 
    </rules> 
</rewrite> 

Y al revés (si prefiere que) para redirigir un no-www a uno con www:

<rewrite> 
    <rules> 
    <rule name="Add WWW prefix" stopProcessing="true"> 
     <match url="(.*)" ignoreCase="true" /> 
     <conditions> 
     <add input="{HTTP_HOST}" pattern="^yourdomain\.com$" /> 
     </conditions> 
     <action type="Redirect" url="http://www.yourdomain.com/{R:0}" redirectType="Permanent" /> 
    </rule> 
    </rules> 
</rewrite> 

El redirectType="Permanent" es, por supuesto opcional, pero para el SEO y la mayoría de los escenarios se lo recomendaría.

Por favor, véase también estos para preguntas/respuestas:

+2

Esta respuesta personifica ¿Cómo así debe ser. Gracias Martin. – pimbrouwers

Cuestiones relacionadas