Vamos tentar entender melhor. Imagine o seguinte endereço hipotético de um site como este, fornece artigos. Temos a seguinte URL:
http://www.nomedosit...igo.asp?id=1243
Seria muito mais conveniente e eficaz para um ponto de vista da indexação ter uma URL como esta:
http://www.nomedosit...artigo_1243.asp
Em virtude da discussão proposta de "criação manual de arquivos individuais" infelizmente não há para dizer que o IIS Web server ASP terá um sistema de escrita nativa da URL em um estático, precisamente simulando uma URL estática, em seguida, o processo é chamado no jargão URL Rewriting.
Mas há ISAPI Rewrite o componente que, quando instalado em sistemas IIS usando expressões regulares simples para reescrever endereços de páginas Web
No site oficial do que é também conhecido como filtro ISAPI, você pode baixar o componente (shareware), e encontrar uma extensa documentação sobre a sua utilização, sua sintaxe e assim por diante. O endereço é o seguinte:
http://www.isapirewrite.com/
Existe uma maneira de dizer que muitos serviços de hospedagem que suporte ASP instalou este componente, então você pode usar sem comprá-lo online, mas pedir o seu hoster sobre como ele está configurado, que tipo de expressões regulares são usados e como e onde está o arquivo que contém acrescentou.
Em geral, porém, basta criar o arquivo httpd.ini e copiá-lo para a raiz do seu site Web
Vamos praticar, a URL de exemplo acima, imaginando o que poderia ser, simplismente falando, o código em artigo.asp:
<%@LANGUAGE = JScript%>
<%
var id = String(Request.QueryString("id"));
%>
<html><head>
<title> Rewrite URL com ASP </title>
</head><body>
<h1>Artigo # <%=id%></h1>
<p>
Texto para ser tornado
dinamicamente a partir do banco de dados ...</p>
</body></html>Nada para explicar, é um arquivo ASP normal que cumpram suas funções.
Deixe a escrita de código para inserir no httpd.ini arquivo para reescrever a URL para o arquivo como acima artigo.asp:
[ISAPI_Rewrite]
RewriteRule /artigo_(.*).asp /artigo.asp?id=$1 [L]
Vamos passo a passo. O cabeçalho [ISAPI_Rewrite] não é obrigatório em todos os casos. Você pode entrar em contato com seu gerente de seu serviço de hospedagem se você usá-lo ou não.
O comando define as regras para reescrita RewriteRule e funciona da seguinte forma:
RewriteRule nova_url velho_url
ou se preferir:
RewriteRule url_estatica url_dinamica
Esclarecido o conceito
Vamos construir a forma de as URLs que queremos mostrar na tela usando, por meio da expressão regular (.*) que significa "aceitar todos os caracteres." Existem outras formas que podem efectuar controles que ocorrem, por exemplo, que são passados apenas números, letras, letras com apenas alguns caracteres especiais, e assim por diante.
Passamos à segunda parte do código, ou que as URLs que são "abandonadas". Querystring para passar o par US $ 1 de caracteres que indica o primeiro parâmetro que é passado na querystring (neste caso, apenas).
O uso do cifrão não acaba aqui, já que a videira utilizados em alguns casos para separar os "novos" e URL "velhas", como em (topo, direita) da seguinte forma:
[ISAPI_Rewrite]
RewriteRule /artigo_(.*).asp$ /artigo.asp?id=$1 [L]
Usamos o cifrão no final da "Nova" URL, sem espaços à esquerda à direita, mas com um espaço antes do "Velho" URL.
O [L] significa "último" (o último) e indica que, se nenhuma expressão de correspondência e lógico, você não precisa de nova verificação.
Agora vamos ver um exemplo de escrita URLs dinâmico em estático com dois parâmetros, tais como as seguintes:
http://www.nomedosit...?cat=50&id=1243
Em essência, vamos indicar explicitamente (talvez por razões de programação), o ID da categoria.
Reescreveos a URL da seguinte forma:
http://www.nomedosit...go/50/1243.html
Vamos ver o código em httpd.ini que deve ser:
[ISAPI_Rewrite]
RewriteRule /artigo/(.*)/(.*).html /artigo.asp?cat=1$&id=$2 [L]
Então, se você entender, dada a configuração do seu servidor, você deve usar o cifrão ou menos como um caractere separador.
É também possível escrever a URL desta forma, seria ideal para a indexação nos motores de busca:
http://www.nomedosit.../titulo_artigo/
Para maiores informações acesse nosso outro artigo.

Help














