Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Inside

ISAPI Rewrite

Recommended Posts

Se a sua dúvida é apenas como exibir apenas uma variavel especifica, faça assim:

 

id = request.queryString("id")

 

ids = Split(id,"+")

 

Dim texto, arrayTexto, i

arrayTexto = ids

Response.Write(arrayTexto(0) & "")

Basta trocar o "i" pelo numero do indice que você deseja exibir...

Att;

Compartilhar este post


Link para o post
Compartilhar em outros sites

Caros,

 

 

segue uma forma de mudar a url já que não consigo pelo ISAPI. O motivo de fazer isso é para resolver a questão & no Twiter.

 

 

default.asp

 


Function FormatText_html(tempText_html)
	
	tempText_html = Replace(tempText_html," ","-" & vbCrLf)
	
	FormatText_html = tempText_html

End Function

response.write "<a href=""noticias.asp?id=" & rs3("catid") & "+" & rs3("subcatid") & "+" & rs3("id") & "+" & FormatText_html(Lcase(rs3("titulo"))) & ".html"" class=""bmn"">" & rs3("titulo") & "</a>"

noticias.asp

 

id_query = request.queryString("id")

aList = Split(id_query,"+")
For nX = 0 to UBound(aList)
strarry=split(aList(nX)," ")
c_var=strarry(0)
co_var=strarry(1)
id_var=strarry(2)
Next

id = id_var

c = c_var

co = co_var


SQL = "SELECT titulo,foto,corpo FROM noticias where status = 1 and id=" & id & " and catid = " & c & " and subcatid = " & co & ""


 

 

Abraço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Uma dica aos usuários que leem este tópico.

 

Tem que deixar claro aos usuários que esta forma não é aconselhável, primeiro por não ser nada amigavel, segundo se for realmente fazer desta maneira, fazer um tratamente verificando com isnumeric, if else valores vazios... dentre outros...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Caro Patrique

 

Eu fzi tudo que o turotil pediu sobre ISAPI, mas não funfa, nem consegui rodar localmente. Na Locaweb onde hospede meu site tem um torrial mas nem chega perto de resolver, o tuturial deles é muito ruim.

 

Quanto ao que você disse valores vazios e tudo mais isso meu script tem, basta cada um colcoar no seu tbm. Ok.

 

Abraço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom primeiro vou mostrar estrutura de pastas

 

C:\Inetpub\wwwroot

 

dentro contém as pastas:

 

BinUrlRewriting

ex-asp

 

 

IsapiRewrite4.ini contém:

 

RewriteRule ^/ex-asp/noticia/([0-9]+)(/[a-zA-Z0-9_-]+)?(.html)?$ /noticia.asp?id=$1|

 

 

URL sem ser amigável:

 

http://localhost/ex-...cia.asp?id=1234 (Funciona mormal)

 

 

Obrigado pela atenção;

Compartilhar este post


Link para o post
Compartilhar em outros sites

Certo... abra o arquivo aonde contem as configurações do seu rewrite... apage tudo e cole o seguinte code...

 

Options +FollowSymLinks
RewriteEngine on
RewriteRule noticia/(.*) /teste\noticia.asp?id=$1
RewriteRule noticia/(.*)/ /teste\noticia.asp?id=$1

Vamos fazer um teste... dentro do seu wwwroot crie uma pasta chamada "teste" nesta pasta crie um arquivo chamado "noticia.asp" neste arquivo abra ele e coloque o seguinte code

 

<%
id = Request.QueryString("id")

Response.Write "Id passado pela variavel é: " & id
%>

Depois disso verifica se ta tudo pegando sem ser amigavel... exemplo... teste a url assim

 

http://localhost/teste/noticia.asp?id=1983

 

vai pegar...

 

depois teste a amigavel que tera que ser acessada assim...

 

http://localhost/noticia/10

 

tente outras... assim

 

http://localhost/noticia/27

http://localhost/noticia/67

http://localhost/noticia/67

http://localhost/noticia/78

 

e note que será modificado...

 

faça o teste ai e olhe o code exemplo para entender, é simples.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Apague esse teste anterior do seu rewrite e coloca esse

 

Options +FollowSymLinks
RewriteEngine on
RewriteRule ex-asp/noticia/(.*) /ex-asp\noticia.asp?id=$1
RewriteRule ex-asp/noticia/(.*)/ /ex-asp\noticia.asp?id=$

a url devera ser acessada assim

 

http://localhost/ex-asp/noticia/1092

 

Porém não há necessidade de colocar o ex-asp, bastaria colocar para acessar noticia/id ficaria mais pratico e menor a sua url

 

Dai nos links dentro dos codes você coloca as url já amigaveis... ao inves de dentro do colde você colocar assim

 

<a href="http://localhost/ex-asp/noticia?id=1092">

você faz assim

 

<a href="http://localhost/ex-asp/noticia/1092">

Compartilhar este post


Link para o post
Compartilhar em outros sites

Entendi tudo até agora, e vou deixar o url menor. Notei que pode-se acessar por qualquer pasta do localhost.

 

Agora tenho mais 2 dúvidas. Se você puder ajudar.

 

 

Meu URL é assim:

 

noticias_ver.asp?c=11&co=1&id=HiLHiLnBmHiLRXVAsM680lSjUVdHiLHiL0

 

como ficaria o arquivo ini?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Nesse caso ficaria assim

 

RewriteEngine on
RewriteRule ex-asp/noticia/(.*)/(.*)/(.*) /ex-asp\noticias_ver.asp?c=$1&co=$2&id=$3
RewriteRule ex-asp/noticia/(.*)/(.*)/(.*)/ /ex-asp\noticias_ver.asp?c=$1&co=$2&id=$3

Exemplo....

 

sua url sem rewrite

 

http://localhost/ex-asp/noticias_ver.asp?c=11&co=1&id=HiLHiLnBmHiLRXVAsM680lSjUVdHiLHiL0

Sua url com rewrite devera ser acessada assim

 

http://localhost/ex-asp/noticia/11/1/HiLHiLnBmHiLRXVAsM680lSjUVdHiLHiL0

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim.

 

Eu coloquei no ini assim:

 

Options +FollowSymLinks
RewriteEngine on
RewriteRule noticia_ver/(.*)/(.*)/(.*) /x-asp\noticia_ver.asp?c=$1&co=$2&id=$3
RewriteRule noticia_ver/(.*)/(.*)/(.*)/ /x-asp\noticia_ver.asp?c=$1&co=$2&id=$3

Compartilhar este post


Link para o post
Compartilhar em outros sites

Caro Patrique eu tinha colocado pasta errada, funcionou beleza,

 

agora ultimo dúvida.

 

 

No código Select eu tenho que fazer alguma coisa diferente para que os ids sejam reconhecidos?

 

Eu já entendi como funciona a parte de resgatar o id

 

 

Agora tentei colocar mais um id, pensei em coplocar o titulo da noticia como muitos sites fazem mas deu erro 404

 

Options +FollowSymLinks
RewriteEngine on
RewriteRule noticia_ver/(.*)/(.*)/(.*)/(.*) /ex-asp\noticia_ver.asp?c=$1&co=$2&id=$3&t=$4
RewriteRule noticia_ver/(.*)/(.*)/(.*)/(.*)/ /ex-asp\noticia_ver.asp?c=$1&co=$2&id=$3&t=$4

URL:

<a href="http://localhost/noticia_ver/11/1/HiLHiLnBmHiLRXVAsM680lSjUVdHiLHiL0/vontuarios.html">Teste</a>

 

beleza, Patrique

 

deu tudo certo. Agora e só implatar no meu código asp.

 

Valeu sua ajuda valeu ouro. Obrigado mesmo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Caros precios de um último help

 

 

Agora fui implantar no meu código que etsá em outra pasta mas deu erro 404 de novo:

 

A forma como coloquei o caminho está errado?

 

Options +FollowSymLinks
RewriteEngine on
RewriteRule noticia_ver/(.*)/(.*)/(.*)/(.*) /localhost\clientes\registro2\web\noticia_ver.asp?c=$1&co=$2&id=$3&t=$4
RewriteRule noticia_ver/(.*)/(.*)/(.*)/(.*)/ /localhost\clientes\registro2\web\noticia_ver.asp?c=$1&co=$2&id=$3&t=$4

URL:

http://localhost/localhost/clientes/registro2/web/noticias_ver/15/22/8HiLnBm8UVdAsMAsMAsMinllSj8nBminl0/registro-realiza-mutirão-do-programa-nacional-de-documentação-da-trabalhadora-rural.html

 

Obrigado pela atenção.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.