Ao instalar o WordPress no IIS7 é possível configurar as urls amigáveis criando um arquivo “web.config” que deverá ser colocado na raiz do site com o seguinte conteúdo:
Esse config fará a configuração do redirecionamento utilizando o “URL Redirect” do IIS7.
Depois, através do painel de administração do WordPress, clique na opção “Configurações” do menu da direita do painel e depois em “Links permanentes”.
Marque a opção “Estrutura personalizada” e cole o seguinte texto: ”/%category%/%postname%/”
Isso fará com que os seus posts sejam publicados com um modelo de url como: “/categoria/titulo” ao invés de algo como: “/2011/10/29/sample-post/”
Mas não é sobre esse redirecionamento para utilizar url’s amigáveis que gostaria de falar e sim, de um problema que estava acontecendo no meu servidor.
Notei que todas as imagens que eu fazia upload e que eu configurava para serem exibidas nos tamanhos pequeno, médio ou grande, apareciam normalmente no site. Porém a imagem no tamanho original, que é exibida quando o usuário clica na imagem para amplia-la, apresentava o seguinte erro:
HTTP Error 500.50 - URL Rewrite Module Error.
The page cannot be displayed because an internal server error has occurred.</p>
Module RewriteModule
Notification BeginRequest
Handler StaticFile
Error Code 0x80070005
Então, o problema era o seguinte:
Ao fazer upload de uma imagem com o nome: “000.jpg”, são criados thumbs (miniaturas) de vários tamanhos,
ex: “000-150x150.jpg”, “000-300x210.jpg” e “000-539x198.jpg”
Esses 3 arquivos eram carregados normalmente pelo browser porém ao acessar o arquivo original: “000.jpg”, ocorria o erro 500.
Eu comecei esse post falando do Rewriter para urls amigáveis porque inicialmente achei que o problema de erro 500 das imagens era gerado devido a um problema do Rewrite
Porém, o problema no meu caso era de permissão de acesso nos arquivos das imagens.
A correção é a seguinte:
Adicione na pasta “wp-content” permissão de acesso para o usuário “IIS_IUSRS” e faça a permissão ser replicada para todas as subpastas.
Atenção: Adicione também permissão para o usuário “IIS_IUSRS” na pasta “Windows\Temp”, porque o WordPress copia os arquivos de upload para essa pasta antes de copia-los para a pasta “wp-content”