Cabeza de Ratón: versus el Amor Letal

sNews en IIS

Cortito y al pie: me encontré ante la terrible situación de tener que instalar un sitio que había armado con snews en un servidor con IIS, cosa que creí no iba a pasarme nunca y zas! no funcionaba el .htaccess, claro, es exclusivo de nuestro querido y libre Apache. Cuando busco ayuda de como hacer funcionar sNews en IIS, la respuesta que encontré en los foros de sNews es que esta hecho para funcionar solo en el sistema que esta en mas del 80% de los servidores del mundo, Apache, por supuesto.
Seguí buscando y consulté al servicio de hosting, y resulta que IIS tiene un Mod Rewrite propio que estaba activado en este hosting. Encontré este sitio y con su ayuda creé un archivo Web.config en la raíz de mi sitio con este contenido:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <configSections>
        <sectionGroup name="system.webServer">
            <sectionGroup name="rewrite">
                <section name="rewriteMaps" overrideModeDefault="Allow" />
                <section name="rules" overrideModeDefault="Allow" />
            </sectionGroup>
        </sectionGroup>
    </configSections>
    <system.webServer>
        <directoryBrowse enabled="true" />
        <caching>
            <profiles>
                <add extension=".php" policy="DisableCache" kernelCachePolicy="DisableCache" />
                <add extension=".html" policy="CacheForTimePeriod" kernelCachePolicy="CacheForTimePeriod" duration="14:00:00:00" />
            </profiles>
        </caching>
        <rewrite>
            <rules>
                <rule name="block favicon" stopProcessing="true">
                    <match url="favicon\.ico" />
                    <action type="CustomResponse" statusCode="404" subStatusCode="1"
                        statusReason="The requested file favicon.ico was not found"
                        statusDescription="The requested file favicon.ico was not found" />
                </rule>
                <rule name="Imported Rule 1" stopProcessing="true">
                    <match url="^(.*)$" ignoreCase="false" />
                    <conditions>
                        <add input="{HTTP_HOST}" pattern="^example\.com$" />
                    </conditions>

                    <action type="Redirect" redirectType="Permanent" url="http://www.example.com/{R:1}" />
                </rule>
                <rule name="Imported Rule 2" stopProcessing="true">
                    <match url="^(.*)$" ignoreCase="false" />
                    <conditions>
                        <add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" negate="true" />
                        <add input="{REQUEST_FILENAME}" matchType="IsDirectory" ignoreCase="false" negate="true" />
                        <add input="{URL}" pattern="^/favicon.ico$" ignoreCase="false" negate="true" />
                    </conditions>
                    <action type="Rewrite" url="index.php?category={R:1}" appendQueryString="true" />
                </rule>
            </rules>
        </rewrite>
        <defaultDocument>
            <files>
                <remove value="index.php" />
                <add value="index.php" />
            </files>
        </defaultDocument>
    </system.webServer>
</configuration>

y voilà! mi sitio en sNews funcionando con sus lindas urls amigables!

You can follow any responses to this entry through the RSS 2.0 feed.