Reescribir URL de IIS y Web.config

No entiendo nada acerca de IIS, pero estoy tratando de resolver este problema de redirigir a todos los visitantes a domain.com/page a domain.com/page.html

            

Un par de problemas surgen:

  1. No sé dónde poner el archivo. Hay un directorio raíz de usuario, y un directorio htdocs, probé ambos, sin alegría.
  2. Ni siquiera sé si la cuenta puede hacer reescrituras, estoy tratando de averiguarlo.

1) Su web.config existente: ha declarado reescribir el mapa … pero no ha creado ninguna regla que lo use. RewriteMap por sí solo no hace absolutamente nada.

2) A continuación se muestra cómo puede hacerlo (no utiliza mapas de reescritura, solo reglas, lo que está bien para pequeñas cantidades de reescrituras / redirecciones):

Esta regla hará una reescritura ÚNICA EXACTA (redirección interna) /page a /page.html . La URL en el navegador permanecerá sin cambios.

           

Esta regla # 2 hará lo mismo que arriba, pero hará 301 redirigir (redirección permanente) donde la URL cambiará en el navegador.

           

La regla n. ° 3 intentará ejecutar dicha reescritura para CUALQUIER URL si hay dicho archivo con extensión .html (es decir, para /page comprobará si /page.html existe, y si lo hace, entonces se reescribirá):

              

Solo quería señalar una cosa que faltaba en la respuesta de LazyOne (solo habría comentado en la respuesta, pero no tengo suficientes representantes)

En la regla # 2 para la redirección permanente, falta algo:

redirectType="Permanent"

Entonces la regla # 2 debería verse así:

           

Editar

Para obtener más información sobre cómo usar el Módulo de reescritura de URL, consulte esta excelente documentación: Referencia de configuración del módulo de reescritura de URL

En respuesta a la pregunta de @kneidels de los comentarios; Para hacer coincidir la url: topic.php?id=39 podría usarse algo como lo siguiente:

              

Esto coincidirá con topic.php?id=ab donde a es cualquier número entre 0-9 yb es también cualquier número entre 0-9 . Luego se redirigirá a /newpage/xy donde xy proviene de la url original. No lo he probado, pero debería funcionar.

Acabo de probar esta regla, y funcionó con GoDaddy hosting ya que ya tienen instalado el módulo Microsoft URL Rewriting para cada cuenta de IIS 7.