Como utilizar o ASP.NET Routing para melhorar a indexação e leitura das URLs do seu site pelos mecanismos de busca – SEO

Olá pessoal, tudo bom?

Como todos sabemos, uma das coisas que ajudam a melhorar o posicionamento do seu site junto aos mecanismos de busca (Google, Bing, etc) é a qualidade das URLs que o mesmo divulga, veja o exemplo abaixo:

No exemplo, as duas URLs levariam para a mesma página, mas convenhamos que a segunda é muito mais legível que a primeira e, essa legibilidade, é levada em conta pelos mecanismos de busca, pois os mesmos consideram as palavras da URL como keywords que ajudam na indexação do conteúdo do site.

O ASP.Net possui um mecanismo chamado de Routing que ajuda o desenvolvedor a “transformar” suas URLs em caminhos mais amigáveis, vejamos os passos:

  1. Crie um projeto do tipo ASP.NET (neste exemplo adotaremos o C# como linguagem de programação)
  2. Adicione uma referência para o asembly System.Web.Routing
  3. Adicione (caso já exista edite) o arquivo Global.asax e proceda conforme abaixo:
    a) Importe o namespace System.Web.Routing

    ...
    using System.Web.Routing;
    ...
    

    b) Adicione o método RegisterRoutes e depois acrescente o código correspondente no método Application_Start

    ...
    public class Global : System.Web.HttpApplication
    {
       void RegisterRoutes(RouteCollection routes)
       {
          routes.MapPageRoute(
             "cursos",               //Nome da rota
             "curso/{nomecurso}",    //URL com parametro
             "~/Rota.aspx"           //Página que vai manipular a rota
          );
       }
    
       protected void Application_Start(object sender, EventArgs e)
       {
          RegisterRoutes(RouteTable.Routes);
       }
    ...
    ...
    
  4. Adicione a página Rota.aspx e no método Page_Load acrescente o código a seguir:
    ...
    protected void Page_Load(object sender, EventArgs e)
    {
       if (!IsPostBack)
       {
          if (RouteData.Values["nomecurso"] != null)
          {
             switch (RouteData.Values["nomecurso"].ToString().Trim())
             {
                case "ciencia-da-computacao":
                   Server.Transfer("~/ExibeCurso.aspx?codigo=10");
                   break;
                case "sistemas-informacao":
                   Server.Transfer("~/ExibeCurso.aspx?codigo=26");
                   break;
                default:
                   Response.Redirect("http://www.seusite.com");
                   break;
             }
          }
       }
    }
    ...
    ...
    

Pronto, a partir daí, sua URL que no exemplo exibe os cursos oferecidos por uma determinada instituição, passaria a ser identificada como http://www.seusite.com/curso/ciencia-da-computacao

Um grande abraço,
Eduardo Henrique Rizo

Post relacionado

Anúncios

Coordenador de Internet da Universidade do Oeste Paulista (Unoeste) e professor universitário de disciplinas relacionadas ao desenvolvimento de sistemas para Web, gerenciamento de servidores, serviços e redes.

Marcado com: , , , ,
Publicado em ASP.NET, Desenvolvimento Web
16 comentários em “Como utilizar o ASP.NET Routing para melhorar a indexação e leitura das URLs do seu site pelos mecanismos de busca – SEO
  1. Awe Eduardo blz? pode disponibilizar um projeto pra download..acho que eu me confundi numa coisa aqui

  2. Eduardo, blz?

    Fiz o download do exemplo… e não funcionou. Quando eu digito /ExibeCurso.aspx?codigo=10, embora o label receba o valor (através do switch que você colocou no PageLoad da página), a URL não é mudada, continua em sua forma “não-amigável”.

  3. Eduardo.. eu de novo!

    Consegui. Obrigado mais uma vez. Fazia tempo que eu estava na procura de um tutorial assim.

    Fica só uma dica para complementar. Quando se muda a URL, se os arquivos .css, js ou qualquer referência no não estiver com o caminho absoluto, eles perderão a referência. Então.. o conselho é sempre colocar ” ../ ” na hora de “chamar” esses arquivos.

    Exemplo:
    <link href=”../css/estilo.css” rel=”stylesheet” type=”text/css” /> //NÃO DÁ PAU!
    <link href=”css/estilo.css” rel=”stylesheet” type=”text/css” /> // ADEUS CSS!

    – A dica vale para imagens também.

    – Percebi que somente o caminho dos arquivos referenciados na página que a URL está sendo tratada que têm as referencias modificadas. Ou seja, se a página tiver uma MasterPage, os links da master page continuam iguais, sem a necessidade de alterações.

  4. […] Como utilizar o ASP.NET Routing para melhorar a indexação e leitura das URLs do seu site pelos mec… Compartilhe:EmailPrintTwitterFacebookGostar disso:GostoSeja o primeiro a gostar disso post. CategoriasASP.NET, Desenvolvimento Web, Microsoft Tags:asp.net, asp.net routing, Error 404, visual studio, web.config Comentários (0) Trackbacks (0) Deixe um comentário Trackback […]

  5. Renato disse:

    Bom dia Eduardo, fiz conforme o artigo creio q funcionou, mas parece q deu erro em outro codigo q uso, Page.Title = SiteMap.CurrentNode.Title +” – TV Cidade”; ele nao esta puxando o Web.sitemap me parece, oq fazer para solucionar esse erro?

    Abraços

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

Erro: o Twitter não respondeu. Por favor, aguarde alguns minutos e atualize esta página.

Sorocaba e Região
Prestadora de serviços RIZZO GS - Sorocaba/SP

Serviços de limpeza, conservação, recepção, copa, portaria, vigia, zeladoria, jardim, elétrica, hidráulica, pintura, etc.

Contato: (15) 3357-4263 / (15) 3357-4502 - contato@rizzogs.com.br

Website: http://www.rizzogs.com.br

%d blogueiros gostam disto: