mod_rewrite em servidor IIS

210 views
Skip to first unread message

EstiloFacil.com - Blog

unread,
Mar 31, 2010, 3:48:17 PM3/31/10
to php-brasil
Pessoal, trabalho com codeigniter e a "url amigável" dele já ta
funcionando de boa, mas eu queria remover aquele index.php do caminho.
Tranquilo fazer isso usando o mod_rewrite do apache através
do .htaccess... mas agora a empresa ta migrando alguns sistemas pra um
servidor windows usando IIS.
Pesquisei diversos tutoriais, em todos falando a mesma coisa, e criei
o arquivo web.config (tipo o .htaccess do IIS) e não funcionou nem com
reza brava...
Alguém aqui tem alguma experiência nisso? eu acho que meu código ta
certo, talvez seja algo no servidor mesmo... aqui o código que usei no
web.config:

<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="exemplo 2">
<match url="^(.*)/?$" ignoreCase="true" />
<action type="Rewrite" url="index.php/{R:1}"
appendQueryString="false" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>

Tanure

unread,
Mar 31, 2010, 3:56:47 PM3/31/10
to php-b...@googlegroups.com
para iis vc tem que suar o httpd.ini

sua regra ia ficar assim

#exceções
RewriteRule /(?:textos|img|img/produtos|js|js_ext|js|css)/(.*) $0 [I,L]
#retira o index
RewriteRule ^(.*)$ /index.php/$1 [L]

as regras:
 . qualquer caracter
 * zerou ou mais
 ^=inici9o de string
 $ final de string

Elton Schivei Costa

unread,
Mar 31, 2010, 4:24:03 PM3/31/10
to php-b...@googlegroups.com
Na sua máquina (local) tu terá o Search Engine Optimization, nele, certifique-se de ter instalado o URL Rewriter, crie uma nova regra e importe o seu arquivo .htacces para dentro dele, mas cuidado, normalmente ele só funcionará na raiz do sistema, se estiver em outra pasta, terás problema. Isto funcionará assim no IIS6, para o IIS7 ele já vem com o suporte.

Tanto para o 6 quanto para o 7 (usando o rewriter fornecido pela MS) as instruções de rewrite estarão guardadas no arquivo web.config no diretório pai da sua aplicação.

Att.

--
Você está recebendo esta mensagem porque se inscreveu no grupo "php-brasil" dos Grupos do Google.
Para postar neste grupo, envie um e-mail para php-b...@googlegroups.com.
Para cancelar a inscrição nesse grupo, envie um e-mail para php-brasil+...@googlegroups.com.
Para obter mais opções, visite esse grupo em http://groups.google.com/group/php-brasil?hl=pt-BR.

EstiloFacil.com - Blog

unread,
Apr 1, 2010, 12:59:54 PM4/1/10
to php-brasil
hummm entendo... no caso eu estou usando IIS 7 e tentei colocar o
web.config dentro de um diretório. Seria esse o motivo do erro? eu nao
tenho aceso direto ao servidor, apenas ao painel do Plesk =( e por eu
usar o 7, já me disseram que ele vem com o url_rewriter instalado por
padrão.

On 31 mar, 17:24, Elton Schivei Costa <lord.sh...@gmail.com> wrote:
> Na sua máquina (local) tu terá o Search Engine Optimization, nele,
> certifique-se de ter instalado o URL Rewriter, crie uma nova regra e importe
> o seu arquivo .htacces para dentro dele, mas cuidado, normalmente ele só
> funcionará na raiz do sistema, se estiver em outra pasta, terás problema.
> Isto funcionará assim no IIS6, para o IIS7 ele já vem com o suporte.
>
> Tanto para o 6 quanto para o 7 (usando o rewriter fornecido pela MS) as
> instruções de rewrite estarão guardadas no arquivo web.config no diretório
> pai da sua aplicação.
>
> Att.
>

> Em 31 de março de 2010 16:56, Tanure <letan...@gmail.com> escreveu:
>
>
>
> > para iis vc tem que suar o httpd.ini
>
> > sua regra ia ficar assim
>
> > #exceções
> > RewriteRule /(?:textos|img|img/produtos|js|js_ext|js|css)/(.*) $0 [I,L]
> > #retira o index
> > RewriteRule ^(.*)$ /index.php/$1 [L]
>
> > as regras:
> >  . qualquer caracter
> >  * zerou ou mais
> >  ^=inici9o de string
> >  $ final de string
>
> > --
> > Você está recebendo esta mensagem porque se inscreveu no grupo "php-brasil"
> > dos Grupos do Google.
> > Para postar neste grupo, envie um e-mail para php-b...@googlegroups.com.
> > Para cancelar a inscrição nesse grupo, envie um e-mail para

> > php-brasil+...@googlegroups.com<php-brasil%2Bunsubscribe@googlegrou ps.com>

Elton Schivei Costa

unread,
Apr 1, 2010, 2:11:54 PM4/1/10
to php-b...@googlegroups.com
Então, somente via plesk mesmo, pois, o web.config pode ser guardado em qualquer pasta do sistema que não da sua hospedagem/revenda, isto é indexado nas configurações do IIS.

Att. 

Para cancelar a inscrição nesse grupo, envie um e-mail para php-brasil+...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages