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!