Linkedin profile Facebook page Follow me on Twitter Follow me on Friendfeed Follow me on Instagr.am Follow me on Flickr View my Gallery Follow me on Tumblr Read my Feed RSS

Utilizzare i permalinks di wordpress su IIS

by Fabio Lalli on 22 December 2009

Configurando Wordpress su server Windows e IIS mi è capitato di imbattermi nella configurazione dei permalinks. Per poter utilizzare i permalinks, in generale, il server deve esser configurato con il mod_rewrite, che però non è supportato nativamente dai server Windows.

Anche se non è presente il mod_rewrite su server windows, wordpress permette comunque di utilizzare i permalinks, ma il risultato è leggermente diverso da una stessa installazione effettuata su Linux + Apache. Nella sezione Permalinks del pannello di WordPress è infatti possibile configurare i parmalinks che genereranno un indirizzo simile a questo:

/index.php/archives/%year%/%monthnum%/%day%/%postname%

WordPress aggirerà il problema passando gli argomenti alla pagina e mostrando nell’url index.php.

Facendo in pò di ricerche ho trovato sul sito WordPress Codex la soluzione a questo problema e quindi la possibilità di configurare IIS per supportare il mod_rewrite. La soluzione è semplice se il server gira con II6 + framework .net 3.5 o con II7.

Semplicemente, nella root del sito dove è installato WordPress, va inserito un file web.config contenente il seguente codice:

<rewrite>
    <rules>
        <rule name="Main Rule" 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/{R:0}" />
        </rule>
    </rules>
</rewrite>

Entrando poi nel pannello sarà possibile togliere la chiamata al file index.php abilitando la struttura Custom del permalinks.

Previous post:

Next post: