SEO

SEO para ASP.NET 4.0 – Melhorias para o Básico de SEO

Por Frank Marcel

Uma das plataformas mais utilizadas para desenvolvimento de sites, o ASP.NET, traz novidades para a sua versão 4, e novidades que melhoram a relação da plataforma com requisitos básicos de SEO, como redirecionamento, URLs amigáveis e gerenciamento de meta tags.

Frank Marcel

Ao longo de todo o tempo trabalhando com SEO, encontrei diversos sites desenvolvidos em ASP.NET, que por vezes apresentavam os mesmos problemas acerca de sua otimização e que, por vezes, os desenvolvedores dos sites não sabiam como resolver ou passavam por dificuldades para implementar uma solução.

Com o aumento incontestável da importância do SEO para um site, os desenvolvedores do ASP.NET implementaram novas funcionalidades para a versão 4 do produto, a fim de facilitar a aplicação de algumas atividades básicas de SEO, tornando o ASP.NET mais amigável ao processo de otimização.

SEO ASP.net

Conforme anunciado pelo ScottGu’s Blog, as novidades em SEO são:

  • Nova propriedade Page.MetaKeywords
  • Nova propriedade Page.MetaDescription
  • Suporte a URLs Amigáveis
  • Novo método Response.RedirectPermanent()

Page.MetaDescription e Page.MetaKeywords

Obviamente, essas propriedades servem para facilitar a otimização individual de meta description e meta keywords para as páginas de um site. Um exemplo de código com o controlador Page_Load:

void Page_Load(object sender, EventArgs e){
Page.Title = "Título Otimizado da Página";
Page.MetaDescription = "Campo para meta description específica de uma página";
Page.MetaKeywords = "insira,as,keywords,relevantes,da,página,aqui";
}

Também, os valores para meta description e meta keywords podem ser determinados direto no código fonte de um arquivo aspx:

<%@ Page Title = "Título Otimizado da Página"
Description = "Campo para meta description específica de uma página"
Keywords = "insira,as,keywords,relevantes,da,página.aqui"
MasterPageFile = "~/Site.Master"
CodeBehind = "paginaX.aspx.cs"
Inherits = "WebApplication1.pagina" %>

Especialmente no caso de meta keywords, essa melhoria na implemetação de meta tags em páginas ASP.NET é tardia, uma vez que todas Search Engines anunciaram que não consideram meta keywords como fator de rankeamento. Para o uso de meta description, essa propriedade será bem útil, já que esta meta tag ainda tem um importante papel no desempenho de um site em SERPs.

Suporte a URLs Amigáveis no ASP.NET

Este é um problema bastante comum em sites ASP.NET: na maior parte dos casos, as URLs são sobrecarregadas de parâmetros, normalmente recebendo valores numéricos (e não palavras – keywords), o que pode causar problemas com conteúdo duplicado (quando os parâmetros são escritos em uma ordem diferente), dificultam o entendimento da URL e não agregam valor semântico para Search Engines.

O ASP.NET 4 conta com a URL Routing Engine, que visa fazer o mapeamento de URLs amigáveis. Tipicamente,  uma URL tem o seguinte formato:

http://www.site.com/categoria.aspx?id=3339

A URL Routing Engine vai permitir que URLs amigáveis sejam mapeadas para suas versões não-amigáveis, ou seja, uma URL:

http://www.site.com/categoria/eletronicos

Será mapeada para a versão não-amigável e seu conteúdo carregado normalmente. Resta validar questões como redirecionamento da versão não-amigável para a amigável e a possibilidade de acesso do conteúdo via URL não-amigável – para evitar conteúdo duplicado.

Método Response.RedirectPermanent()

O redirecionamento em ASP.NET normalmente é realizado com o método Respose.Redirect(), mas existe um problema: este método retorna o código 302, indicando um redirecionamento temporário, o que não é o quadro ideal para SEO.

O novo método Response.RedirectPermanent() do ASP.NET 4 resolve esta questão respondendo com código 301, redirecionamento permanente, uma indicação de mudança de URL:

Response.RedirectPermanent("nova/url.aspx");

Outros 2 novos métodos também entram para tratar redirecionamentos:

//Redirecionamento 302:
Response.RedirectToRoute("Categorias", new { category = "categoria1" } )
//Redirecionamento 301
Response.RedirectToRoutePermanent("Categorias", new { category = "categoria1" } )

SEO com ASP.NET

Como disse no início do artigo, as novidades no ASP.NET 4 resolvem questões básicas de SEO. Considerando o tempo de vida e importância de SEO para o desempenho de um site, essas novidades chegam atradas para os desenvedores de websites. São questões já muito debatidas, mas que agora estão facilitadas.

Por fim, convido os desenvolvedores que utilizam o ASP.NET para seus comentários e impressões. Até a próxima!

LEIA MAIS

Como Fazer o Google Encontrar o Seu Site?

Como Fazer o Google Encontrar o Seu Site?

Você sabia que existem diferentes formas de ajudar o Google a encontrar o seu site? Coloque nossas dicas em prática e faça seu site aparecer no buscador!

Páginas 404 Não Devem Retornar o Código 200 de Status

Páginas 404 Não Devem Retornar o Código 200 de Status

Hoje em dia é muito comum que página de erro 404 sejam customizadas, mas o trabalho de qualquer profissional de SEO é que estas páginas façam realmente o seu papel. Veja como prevenir que suas páginas de erro 404 causem problemas com os seus rankings.

Redirecionamento 301: Guia Completo – PHP, .htaccess, WordPress e Python

Redirecionamento 301: Guia Completo – PHP, .htaccess, WordPress e Python

Você quer saber como configurar o redirecionamento 301 no seu site? Veja como e mantenha sua relevância no Google!

Comentários
  1. Avatar

    Muito bom o artigo! Trabalho com ASP.NET, e sempre tive dificuldades em criar sites com uma url amigável. Já uso o URL routing a algum tempo no ASP.NET MVC, já imaginava que a microsoft iria colocar isso no ASP.NET.

  2. Avatar

    Muito bom o artigo! Trabalho com ASP.NET e sempre tive dificuldades em criar sites com uma url amigável. Já uso o URL routing a algum tempo com o ASP.NET MVC, já imaginava que a microsoft iria implementar essa funcionalidade no ASP.NET. Ainda não tive contato com o ASP.NET 4.0, mas espero bastante melhorias.

  3. Avatar

    Acho que para obter páginas otimizadas para SEO o ASP.NET MVC é o mais indicado. Já fiz site utilizando ele e deu resultado legal e com menos dor de cabeça do que o ASP.NET apenas.

    • Avatar

      Mas agora com o suporte em sua versao 4. Acho que nao iram migrar mais para o ASP.net MVC, é uma pena.!

  4. Avatar

    Oh que bom que tem url amigaveis na versao 4.0.
    So conhecia no ASP.net MVC.

    Muito bom saber disto.

  5. Avatar

    As urls amigáveis já podiam ser feitas há algum tempo implementando uma classe derivada da interface IHttpHandler e mapeando no web.config uma extensão de arquivo ou mesmo um diretório inteiro para ela.

    • Avatar

      Parece que o ASP.NET 4 está facilitando as coisas então.

    • Avatar

      Ja ouvi falar mesmo.. mas dizem que na prática nao é tao simples assim. Tem algum documento falando de como fazer isto?

      Valew.

      • Avatar

        Cria uma class como a do exemplo abaixo:

        public class ConteudoHandler : IHttpHandler
        {
        public ConteudoHandler()
        {
        }

        public void ProcessRequest(HttpContext context)
        {
        string alias = System.IO.Path.GetFileName(context.Request.RawUrl.ToString());

        var conteudo = MetodoQueBuscaConteudo(alias);
        if (conteudo != null)
        {
        HttpContext.Current.Server.Transfer(“/conteudo.aspx?id” + conteudo.Id);
        }
        else
        {
        HttpContext.Current.Server.Transfer(“/Erro/404.aspx”);
        }
        }

        public bool IsReusable
        {
        get
        {
        return true;
        }
        }
        }

        E no web.config vc coloca a seguinte entrada:

        Dessa maneira qualquer coisa que vc chame em /conteudo/meu-conteudo-qualquer vai redirecionar de forma transparente para /conteudo.aspx?id=1234

        • Avatar

          Oooops faltou o sinal de igual depois de ‘?id’ na linha abaixo. Segue a correção.

          HttpContext.Current.Server.Transfer(”/conteudo.aspx?id=” + conteudo.Id);

        • Avatar

          Sergio, faltou o código do web.config.
          Se você utilizar html, separe os caracteres ou eles não vão aparecer. O WordPress não permite todo tipo de html.

          Obrigado pelas informações!
          Enriqueceu, e muito, o artigo!

          Abraços!

        • Avatar

          Ultima tentativa do web.config:

          <system.webServer>
          <handlers>
          <add name=”ConteudoHandler” path=”conteudo/*” verb=”*” type=”NamespaceQualquer.ConteudoHandler” resourceType=”Unspecified” preCondition=”integratedMode” />
          </handlers>
          </system.webServer>

        • Avatar

          Obrigado Sergio!

        • Avatar

          Valew Sergio, isto vai ser de bom aproveito.
          Desculpe a demora em responder, eu NÃO esqueci deste post. Valew..

  6. Avatar

    Não é tardia as mudanças. Acho que veio em boa hora.
    O ASP.NET tem uma arquitetura muito boa para desenvolvimento e essas novas funcionalidades, aliadas as demais do ASP.NET 4, coloca a tecnologia com grande diferencial para desenvolvimento.

    • Avatar

      Olá Luis, disse que são tardias pois resolvem questões básicas de SEO, questões que já são discutidas há anos, e somente agora o ASP.NET facilitou a vida dos desenvolvedores com código simples e nativo da linguagem.

  7. Avatar

    Boa noite, sou programador PHP, mas estou tendo que implementar técnicas básicas de SEO em um site feito em Asp.net, o Google faz alguma diferenciação de PHP para Asp.net? previlgégia a utilização do PHP?

    valew obrigado!

    • Avatar

      Se colocarmos ambas linguagens em condições equivalentes (ambas programadas com qualidade, ambas em servidores de alta performance, etc.), não faz diferença usar uma ou outra.

Os comentários estão fechados.

Já pensou em fazer parte do nosso time de mestres?