Como mod_rewrite no servidor web IIS

Como mod_rewrite no servidor web IIS

Como meu servidor anterior era uma máquina com Linux, tenho este trecho de código:

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ index.php?path=$1 [NS,L]
</IfModule>

Este trecho de código colocará as informações na URL assim:

http://www.example.com/nr1/nr2/nr3/

em uma matriz como esta:

array ( 0 => "nr1", 1 => "nr2", 2 => "nr3")

Minha nova máquina servidora é um servidor baseado no Windows 2008 (IIS). Agora eu gostaria de usar o mod mod_rewrite também no meu novo servidor. Resumindo minha pergunta é:

Alguém pode me dizer ou me vincular a um tutorial que me diga como instalar/usar o mod mod_rewrite (ou qualquer mod que faça a mesma coisa) e traduzir o código acima em um formato que eu possa usar no meu servidor baseado em Windows.

Eu ainda uso php, não ASP.NET, eu sei que muitas pessoas dirão para usar o Apache ou algo assim, mas infelizmente o uso do IIS é necessário.

Muito obrigado antecipadamente!

Responder1

Eu gosto bastante do Módulo de Reescrita do IIS porque ele está totalmente integrado ao web.configarquivo (o equivalente do IIS ao .htaccess).

Mas se você deseja uma correspondência exata de sintaxe,ISAPI Rewrite é seu amigo. Ele tem (até onde eu sei) 100% de compatibilidade com mod_rewriteo módulo do Apache em um .htaccessarquivo (e na verdade usa um .htaccessarquivo que parecerealmenteestranho no Windows Explorer ver um arquivo válido sem nome de arquivo)

Responder2

O site oficial do IIS da Microsoft tem oMódulo de reescritavocê está procurando.

Se você estiver familiarizado com o mod_rewrite, os equivalentes do IIS são bastante semelhantes. Caso contrário, existem muitos guias na rede. A intenção original do módulo era espelhar o mod_rewrite, por isso é bastante semelhante, embora tenham crescido em direções ligeiramente diferentes.

informação relacionada