Habilitar a URL Amigável no IIS para o OpenCart

Vou postar um dica para quem está utilizando o opencart, mas utiliza a plataforma windows na sua hospedagem com servidor IIS, e nela não está habilitado modo de interpretação do .htaccess. Para isso você precisará criar um arquivo chamado web.config,que nada mais é que um arquivo com instruções XML para configuração no servidor. Ele fará o mesmo papel que o .htaccess.

Código web.config

<configuration>
<system.webServer>
<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?_route_={R:1}" appendQueryString="true" />
         </rule>
     </rules>
 </rewrite>
</system.webServer>
</configuration>

Download do arquivo: web.config

Espero que tenha ajudado essa dica




Se o conteúdo foi relevante para você, e desejar, você pode incentivar fazendo uma doação.

12 thoughts on “Habilitar a URL Amigável no IIS para o OpenCart

  1. Amigo DAvid, me perdoê a ignorancia, mas nem sei o que é open cart. Mas me diga uma coisa, uso a plataforma windows e meus blogs são todos wordpress.org, isso me ajudaria de alguma forma?
    Abraço amigão!!!

    1. Aurélio, se vc utiliza o wordpress, e ele se sua hospedagem utilizar windows com servidor IIS, e você quer se site tenha URL Amigável, teria que utilizar o arquivo web.config, mas com outras configurações. O conteudo do arquivo será esse:

      
      <configuration>
        <system.webServer>
           <rewrite>
            <rules>
              <rule name="wordpress" stopProcessing="true"> 
                <match url="^(.*)" />
                  <conditions>
                    <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>
      

      Depois de jogar o arquivo web.config no servidor, você irá logar no wp-admin, e em configurações > links permanentes . Vc vai escolher a a opção estrutura personalizada, e no campo em frente desse item, vc escreveria :

      /%category%/%postname%/
      

      Depois basta salvar. Acesse seu site novamente, e tente navegar nele, e veja se a URL modificou

      1. Grande amigão, vou tentar por em prática amanhã em um blog que tem pouquissimo conteúdo e ver no qua dá, já está nos favoritos!
        Obrigado e grande abraço amigão!!!

  2. Olá, Sua dica foi muito boa, estava com o problema e nao conseguia resolver e copiando o arquivo como você fez funcionou perfeitamete. Parabens.

  3. Isso funciona no IIS com windows 2003 server??
    Coloquei o web.config na raiz e ativei URL Amigável no open cart, mas não rolou.

    Fiquei desconfiado que isso só rolaria no iis 7

  4. Velhinho, admiro você cara! Muito bom, você realmente mata a pau! Estava quebrando cabeça nisso, a maioria diz que não funciona em iis, mas teu código foi show, está rodando 1000% na hospedagem UOLHOST WINDOWS. Parabéns, valeu!

  5. E ai Davi tudo bem? Ótimo post! Queria só uma ajudinha sua.

    Gostaria de transformar a url
    http://tvcidades.net/materia.php?c=2&n=jovem-e-preso-roubando-armas-226
    em
    http://tvcidades.net/2/jovem-e-preso-roubando-armas-226

    Tentei fazer algumas modificações, mas o máximo que consegui foi isso

    http://tvcidades.net/materia.php?2/jovem-e-preso-roubando-armas-226

    Ta pertinho do resultado que eu quero, mas agora queria suprimir o materia.php. Como faço isso? Abaixo a linha de código do meu web.config

    Agradeço a atenção!

    1. Nesse caso, vc precisa gravar SLUG no banco de dados (jovem-e-preso-roubando-armas), assim vc recuperar a URL, e pesquisa no banco de dados por essa URL

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *