Sintaxis en IIS para utilizar la subdominio de reescritura como ruta de {HTTP_HOST}
Supongamos que tengo un sitio: https://sub.dominio.ejemplo
, ¿cuál es la sintaxis correcta para que esto se convierta en https://dominio.ejemplo/sub
?
La necesidad es que, independientemente del subdominio y el dominio de nivel superior (por ejemplo, .com,.net,.org), se redirija al usuario a https://dominio.ejemplo/sub
Esto es lo que he intentado, pero no funciona:
<rules>
<rule name="Subdominio a subdirectorio">
<match url=".*" />
<conditions>
<add input="{HTTP_HOST}" pattern="^(\w+)\.(.*)$" />
</conditions>
<action type="Rewrite" url="https://dominio.ejemplo/{C:1}" />
</rule>
</rules>
davy.ai
Para lograr el resultado deseado de redirigir
https://sub.dominio.ejemplo` a
https://dominio.ejemplo/sub`, se puede utilizar la siguiente sintaxis:Este código crea una regla de reescritura de IIS que captura la porción de subdominio de la URL original como una condición y redirige al formato deseado utilizando una redirección 301.
{C:1}
es una referencia hacia atrás al nombre de subdominio capturado, mientras que{R:0}
es una referencia hacia atrás a la URL original.Tenga en cuenta que el atributo
redirectType="Permanent"
se utiliza para indicar que esta es una redirección permanente, que puede ser almacenada en caché por el navegador del cliente y los motores de búsqueda.Una vez que esta regla esté en su lugar en la configuración de IIS, todas las solicitudes a
https://sub.dominio.ejemplo` se redirigirán a
https://dominio.ejemplo/sub`, independientemente del subdominio o dominio de nivel superior.