Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Bom dia gente.
Estou com problemas quanto ao SEO com ASP, ou ASP com SEO? jájá vou desobrir.
O que acontece, eu tenho em minha página 404 um código ASP que pega a URL, quebra ela e da um server.transfer pra página default.asp, nela eu tenho no meio do código onde seria o conteúdo uma página seo.asp que também pega a url, quebra e mostra o que eu quero, por exemplo:
URL: http://127.0.0.1/cliente/produtos
404.asp (c:/inetpub/wwwroot)
'Pega o que foi digitado na barra de enderecos
url_digitada = request.servervariables("QUERY_STRING")
'Pega qual o dominio do seu site
minha_url = Request.ServerVariables("SERVER_NAME")
'Tira o padrao que o IIS poe quando manda para a pagina de erro 404
trata_url = Replace(url_digitada, "404;http://" & minha_url & "/", "")
'Separa a string que agora esta assim: "noticia/125/titulo_de_noticia_que_nao_vai_fazer_diferenca"
quebra_url = Split(trata_url, "/")
Select Case quebra_url(0)
Case "fnsystem"
server.transfer "fnsystem/default.asp"
Select Case quebra_url(1)
case "produtos"
case "servicos"
case else
response.redirect "erro.asp"
end select
Case Else
'E aqui é para se a sessao não existir, ou se o cara escrever qualquer bobera na url
Response.Write "404 - ERRO de exibição"
End Select
%>
Até então beleza, ele "redireciona", na realidade ele transfere para a página http://127.0.0.1/fnsystem/produtos perfeitamente, e lá no meu default.asp (que é chamado pelo server.transfer na 404.asp) tem outro código pra poder pegar meus includes.
seo.asp (c:/inetpub/wwwroot/fnsystem)
<%
url_digitada = request.servervariables("QUERY_STRING")
'faz uma verificação para se tiver algo a mais que 127.0.0.1, evitando erros na url
if url_digitada <> "" then
minha_url = Request.ServerVariables("SERVER_NAME")
trata_url = Replace(url_digitada, "404;http://" & minha_url & "/", "")
pega_url = Split(trata_url, "/")
select case pega_url(1)
case "produtos"
%><!-- #include file="produto.asp" --><%
case "servicos"
response.write "serviços"
case else
response.redirect "erro.asp"
end select
end if
%>
até então tranquilo, em partes, pq quando eu pego /produtos/1 por exemplo, todas as imagens dão problema, não sei o que fazer, existe alguma outra solução para trabalhar com ASP e SEO?
Alguém poderia melhorar este código ou apresentar uma outra solução para o SEO com ASP, já vi falando da página 301, mas não sei se da com ASP, não tentei ainda.
Estou tentando fazer funcionar o SEO bonitinho porque é pra um ecommerce, então eu gostaria de entregar um trabalho realmente decente para o cliente e que ajudasse a ter mais visitas.
Desde já obrigado.
Pelo fato de eu não conhecer muito bem ASP a sua dúvida ficou extremamente confusa para mim. rs
Quanto ao 301
já vi falando da página 301, mas não sei se da com ASP
é possivel sim com ASP
Dessa forma:
<%@ Language=VBScript %>
<%
Response.Status=”301 Moved Permanently”
Response.AddHeader “Location”,”http://www.seusite.com.br/”
%>
vou mover para a área de ASP pois acredito que possa até ser algo no código.
Thelon, me explica uma coisa, tipo, qual a real função do 301? até agora eu não entendi.
A Minha dúvida real é a seguinte, eu consigo chegar até o nível de pegar a página de produtos, mas dai pra frente eu não sei o que fazer mais, tipo se o cara digitar fnsystem/produtos/pc-microsoft-tal-tal-tal, ai eu não sei como pegar esta variável a partir do produtos/ e apresentar com o ASP entende?
Galera consegui montar o código, vou postar aqui jajá.
legal, parabéns
depois eu disponibilizo no laborátorio de script
Galera, desculpem a minha demora, mas configurei tudo certinho pra não ter problemas ok.
O tutorial está em SITE.
Está já é uma página com SEO, é só checar, você pode entrar por http://www.luizricardofc.com.br/url-amigavel-seo-com-asp ou http://www.luizricardofc.com.br/404/tutorial.asp.
Espero que você gostem do tutorial.
Att.
Galera, aqui está o tutorial também pelo imasters ok, é que eu quis colocar no meu site também pra testar e tal.
Bem, vamos lá.
Primeiramente, gostaria de explicar que este código só foi possível ser feito por causa de outros códigos que achei na internet e adaptei, então não sou o criador 100%.....rsrs, podemos dizer que sou 75%...rsrs.
1º PASSO - Configurar o IIS
Primeiramente entre no seu IIS e em SITES DAWEB, clique com o direito e depois em propriedades ok?
Depois clique na aba ERROS PERSONALIZADOS, nela você terá o tão famoso erro 404, ache o erro 404 e clique duas vezes ou em EDITAR PROPRIEDADES.
OBS: Há dois erros HTTP 404 nesta tela, EU modifiquei ambos
Depois de selecionado, modifique a opção TIPO DE MENSAGEM de ARQUIVO para URL, após feito isso, coloque abaixo /404.asp e pronto, seu IIS já está configurado para personalizar a sua URL Amigável.
Agora sim, vamos aos códigos ok.
Primeiramente, personalizar o 404.asp que deverá estar na pasta C:\Inetpub\wwwroot, este é o local de onde ele deverá estar. Então pra começar, abra seu editor preferido e vamos ao código.
404.asp
<%
'------Para poder trabalhar mais facilmente com este código, eu coloquei a variável PASTA, que define qual pasta o arquivo vai estar, no caso de ser via WEB, a pasta de erros é dentro da pasta principal, por
'------isso eu utilizo o ../cliente/, para que saia da pasta principal e entre na pasta que eu quero (no meu caso estou usando umas pasta cliente dentro da minha principal para testes ok?).
'PASTA = "../cliente/"
'------Esta será a variável que iremos utilizar, então não esqueçam de ter uma pasta CLIENTE dentro da sua wwwroot e dentro dela um arquivo que chamaremos a seguir.
PASTA = "cliente/"
'------Pega o que foi digitado na barra de enderecos
url_digitada = request.servervariables("QUERY_STRING")
'------Pega qual o dominio do seu site
minha_url = Request.ServerVariables("SERVER_NAME")
'------Tira o padrao que o IIS poe quando manda para a pagina de erro 404
trata_url = Replace(url_digitada, "404;http://" & minha_url & "/", "")
'------O padrão abaixo é o padrão de sites não de localhost ok, só use este quando for utilizar no site, na realidade você teria que ver qual é o seu padrão e montalo
'trata_url = Replace(url_digitada, "404;http://" & minha_url & ":80/", "")
'------Os responses listados aqui abaixo, são apenas pra testes, assim você saberá o que esta retornando das variáveis criadas
'response.write "1= "&url_digitada&"<br>"
'response.write "2= "&minha_url&"<br>"
'response.write "3= "&trata_url&"<br>"
'------Está é a primeira chamada, por exemplo: 127.0.0.1/cliente ou /teste, ele irá checar sempre se existe esta pasta, pq quando
'------fizermos outra chamada (por exemplo: 127.0.0.1/cliente/produtos) ele vai dar erro 404, já que não existe ainda a produtos, mas como vamos ver, este erro de 404 vai sumir.
quebra_url = Split(trata_url, "/")
'------Agora voce pode fazer como achar melhor
'------Eu vou fazer com um Select Case para ver qual sessao do site que vai redirecionar
Select Case quebra_url(0)
Case "cliente"
server.transfer PASTA&"default.asp"
'------Para cada pasta que você quiser montar URL Amigavel, você deverá ter uma chamada de case aqui dentro
Case Else
'------E aqui é para se a sessao não existir, ou se o cara escrever qualquer bobera na url
Response.Write "404 - ERRO de exibição"
End Select
%>
Dentro de seu arquivo ( que como vimos acima é o default.asp ) teremos um outro código muito semelhante, mas para filtrar o que vem a partir da segunda barra (lembra: 127.0.0.1/cliente/produtos).
OBS: Eu não usei este código abaixo diretamente dentro do meu default.asp, eu montei um código a par para que eu sempre possa utilizá-lo ok, isto fica a critério de cada um, ai vai do gosto do programador.
default.asp
<%
url_digitada = request.servervariables("QUERY_STRING")
if url_digitada <> "" then
minha_url = Request.ServerVariables("SERVER_NAME")
trata_url = Replace(url_digitada, "404;http://" & minha_url & "/", "")
'------O padrão abaixo é o padrão de sites não de localhost ok, só use este quando for utilizar no site, na realidade você teria que ver qual é o seu padrão e montalo
'trata_url = Replace(url_digitada, "404;http://" & minha_url & ":80/", "")
pega_url = Split(trata_url, "/")
select case pega_url(1)
case "produtos"
%><!-- #include file="menu.asp" --><%
'------O que eu fiz aqui foi pegar a variável que vem a partir da terceira / (exe: 127.0.0.1/cliente/produtos/livros-sobre-sei-la-o-que)
produto = pega_url(2)
%><!-- #include file="produtos.asp" --><%
case "servicos"
response.write "serviços"
case else
%><!-- #include file="erro.asp" --><%
end select
end if
%>
Então tudo que vier como 127.0.0.1/cliente/produtos/ ele vai mostrar o nosso arquivo de include, um grande problema que não descobri como resolver é, a partir da terceira barra, se não tiver a barra na frente de produtos /produtos/ ele da erro de Subscrito fora do intervalo: '[number: 2]' então por isso em seus códigos, sempre que for chamar uma terceira, quarta, ou até mesmo quinta / procure usar sempre o /link/ pra evitar o erro, pois ele entende que ali está vazio.
Gente é isso aí, qualquer coisa pode entrar em contato, estou a disposição.
fico um bom código...
Muito obrigado xanburzum.
Eu acharia interessante quem alterar, publicar aqui pra nós todos compartilharmos, pq trabalhar com URL Amigável não é muito fácil não.
Até mais.
sem problemas, deixo no lab. de script, e quem alterar , posta direto lá.
Primeiramente, gostaria de explicar que este código só foi possível ser feito por causa de outros códigos que achei na internet e adaptei, então não sou o criador 100%.....rsrs, podemos dizer que sou 75%...rsrs.
75% nao é muito nao, pra quem nem se deu ao trabalho de trocar os nomes das variaveis que eu criei?
códigos que achei na internet e adaptei, então não sou o criador 100%.....
cara, desculpe, mas acho que não estamos falando do mesmo código, eu sei que tem muitas semelhanças, mas eu nunca tinha visto este código seu.
Bem, se o cara pegou do seu código e assim eu peguei dele, me desculpe, não tive a intenção de querer me passar por bom ou coisa e tal, só acho que temos que compartilhar, mas que eu fiz várias modificações eu fiz, por isso coloquei 75%, mas se for te fazer feliz que eu fique apenas com 30%, 10% ou nada, pra mim tanto faz, desde que os nossos colegas tenham acesso ao código e possam crescer assim como nós.
Galera, código é código, vamos trabalhar juntos ok, assim, seremos todos bons programadores, é isso aí.
Valeu xanburzum pela réplica aí e novamente desculpe Desisto, não fiz nada com má intenção ok.
valeu.
Vamos aproveitar pra outro tipo de discução? cara, realmente seu código tem muito haver com o que eu peguei, but, li seu post e vi que você comentou sobre sitemap e não faço a mínima idéia de como fazer? da um help aí por favor.
valeu abraços.
eu nao preciso de credito... pra falar a verdade, nem que você diminua o seu %
minha intenção sempre foi ajudar, por isso postei o codigo, pra qq um usar, alterar... nao me preocupo com creditos - alguem daria credito pra alguem com nick de DESISTO? heheheheh
nao posto nada a nao ser como ajuda, afinal eu sou 'anonimo' :)
o que você tem duvida sobre sitemap?
so mais uma coisa
esse cod que postei, trata-se de 404 personalizado e é antigo, apenas postei recentemente, pois antes nao trabalhava com ISAPI e hj sim
isapi me supriu melhor as necessidades e agora esse cod eu uso apenas em 404 mesmo
dependendo do caso pode ser uma otima solução pra projeto de pequeno e medio porte, para grande, ja acho que não é o mais aconselhavel
[]s
Entendi, qual seria a melhor opção então para um projeto de maior porte? é que estou montando um ecommerce e tenho a necessidade de utilizar a melhor técnologia (ASP) possível para sair tudo perfeito.
Eu gostaria de saber o que é sitemap, como montar, pra que serve? kkkkkkkkk
A, e também se puder me explicar como trabalhar como ISAPI, eu agradeço.
Valeu cara.
Apropósito, concordo plenamente com sua última frase "Quantidade de posts não da dinheiro... não entendo o desespero" ...... kkkkkkk ta cerinho.
Viu, qualquer coisa me add no skype ou msn pra gente conversar melhor, se der tudo certo depois eu posto um código bem melhor aqui, com nossos créditos (kkkkkkkkkkkkkkkkkkkkk).....brincadeirinhaaaaaa....rsrs
e ai luiz, mal na demora, estava mais no offtopic esses dias :)
minha assinatura é pq nego parece que bate ponto aqui, sei lá, é estranho hehehehehe
vamos ao que interessa
pra ecom sem duvida eu optaria pelo isapi, como disse, ele é bem mais maleavel nesse sentido... veja
site.com/produto/123
com 404, você teria que percorrer as barras e redirecionar ou executar outra pagina
com isapi você manda acessas direto produto.asp?id=123
tem muita coisa aqui sobre o isapi - algumas prestam, outras não
estou pra fazer um tuto sobre seo, isapi e urls, mas to sem tempo nenhum
poste uma url de um exemplo seu pra ter uma ideia de como seria o isapi pro caso
e se eu demorar, ou se preferir, mande uma mp pra mim... nao tenho nenhuma tecnologia moderna ehehehehe sem skype, sem msn, sem orkut... fui banido da sociedade
[]s
sitemap é para oferecer suporte a infra-estrutura de navegação, já o ISAPI você tem uma referência legal neste link, e existem ótimos tópicos no fórum
Bommmmmm diaaaaaaaaa....kkkkk
Legal, vou procurar saber mais sobre o sitemap e também vou dar uma analisada no link que você passou xanburzum....valeu mesmo
Muito bom a solução, funcionou perfeito para mim.
Obrigado.
Vamos lá, uma parte eu já consegui, quanto aos links e também imagens, todas tem que ser com caminho absoluto pra dar certo ok? pelo menos aqui ficou legal, vamos continuar.