Um pequeno detalhe do WordPress com multisites no IIS 7

Existem algumas coisas em TI que torram a paciência. Detalhes são sempre detalhes.

Durante a instalação do WordPress no ISS 7 tudo ocorreu perfeitamente, mas o objetivo era habilitar/instalar o Network Panel que é a funcionalidade do antigo MU para multisites.Segui as etapas conforme as recomendações com essa finalidade e tudo bem. Na hora chamar um dos sites que foram criados o ISS estava reportando o erro 404 clássico.

Como os caminhos são gerados por Rewrite, aqui estava o problema. Aí que vem a dica. O web.config correto, pois o que é sugerido ao final da instalação no Network  não funciona corretamente, está disponível no WordPress Trac.

Após substituir o web.config pelo do link, tudo ficou funcionando corretamente.

Abaixo segue o web.config correto.

Abraços.

Até a próxima.

1 <?xml version=”1.0″ encoding=”UTF-8″?>
2 <configuration>
3 <system.webServer>
4 <rewrite>
5 <rules>
6 <rule name=”wordpress – strip index.php” stopProcessing=”false”>
7 <match url=”^index.php/(.*)$”/>
8 <action type=”Rewrite” url=”{R:1}”/>
9 </rule>
10 <rule name=”wordpress – 1″ stopProcessing=”true”>
11 <match url=”^(.*/)?files/$”/>
12 <action type=”Rewrite” url=”index.php”/>
13 </rule>
14 <rule name=”wordpress – 2″ stopProcessing=”true”>
15 <match url=”^(.*/)?files/(.*)”/>
16 <conditions>
17 <add input=”{REQUEST_URI}” negate=”true” pattern=”.*wp-content/plugins.*”/>
18 </conditions>
19 <action type=”Rewrite” url=”wp-includes/ms-files.php?file={R:2}” appendQueryString=”false”/>
20 </rule>
21 <rule name=”wordpress – 3″ stopProcessing=”true”>
22 <match url=”^(.+)$”/>
23 <conditions>
24 <add input=”{REQUEST_URI}” pattern=”^.*/wp-admin$”/>
25 </conditions>
26 <action type=”Redirect” url=”{R:1}/” redirectType=”Permanent”/>
27 </rule>
28 <rule name=”wordpress – 4″ stopProcessing=”true”>
29 <match url=”.”/>
30 <conditions logicalGrouping=”MatchAny”>
31 <add input=”{REQUEST_FILENAME}” matchType=”IsFile” pattern=””/>
32 <add input=”{REQUEST_FILENAME}” matchType=”IsDirectory” pattern=””/>
33 </conditions>
34 <action type=”None”/>
35 </rule>
36 <rule name=”wordpress – 5″ stopProcessing=”true”>
37 <match url=”^([_0-9a-zA-Z-]+/)?(wp-.*)”/>
38 <action type=”Rewrite” url=”{R:2}”/>
39 </rule>
40 <rule name=”wordpress – 6″ stopProcessing=”true”>
41 <match url=”^([_0-9a-zA-Z-]+/)?(.*\.php)$”/>
42 <action type=”Rewrite” url=”{R:2}”/>
43 </rule>
44 <rule name=”wordpress – 7″ stopProcessing=”true”>
45 <match url=”.”/>
46 <action type=”Rewrite” url=”index.php”/>
47 </rule>
48 </rules>
49 </rewrite>
50 </system.webServer>
51 </configuration>