Es la primera vez en 10 años que me topo con un servidor Windows. No acostumbro a trabajar con servidores con este sistema operativo porque no trabajamos con los lenguajes de este.

Es por ello que de una manera más versátil, barata y efectiva, siempre lo hacemos bajo sus homólogos GNU/Linux.

No obstante, hace poco tuve que instalar un WordPress en este sistema, y me topé con que (obviamente) los archivos .htaccess usados en servidores GNU/Linux para tratar las directivas de Apache, no servían en IIS (Internet Information Services) de Windows. Y debido a ello, no podía mostrar las URLS amigables en WordPress, devolviendo un error 404.

¿Solución?

La solución se llama web.config que no es más que un sistema con ese nombre y extensión que debemos de poner en el directorio raíz de nuestro WordPress, reemplazando a nuestro ya familiar .htaccess. El contenido que debe de tener es:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
  <system.webServer>
    <rewrite>
      <rules>
        <rule name="wordpress" stopProcessing="true">
          <match url=".*" />
          <conditions logicalGrouping="MatchAll">
            <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
            <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
          </conditions>
          <action type="Rewrite" url="index.php" />
        </rule>
      </rules>
    </rewrite>
  </system.webServer>
</configuration>

Nota: el servidor IIS debe de tener activo el módulo URL rewrite.