Rose debug info
---------------

Новые средства SEO оптимизации в ASP.NET 4

Поисковая оптимизация (SEO) важна для любого публичного веб-сайта. Не секрет, что значительную часть трафика на сайты создают поисковые системы, и повышение релевантности поиска веб-сайта приводит к притоку посетителей по поисковым запросам.

Улучшения SEO в ASP.NET 4
В ASP.NET 4 появилось несколько новых функций, которые помогут вам в оптимизации сайта для SEO. Некоторые из этих новых возможностей:

1. Новые свойства Page.MetaKeywords и Page.MetaDescription

  1. Поддержка новой маршрутизации URL для ASP.NET
  2. Новый метод Response.RedirectPermanent()

Одна из самых простых рекомендаций по SEO оптимизации — это соответствие тайтла и мета-тегов страницы её содержимому

<head runat="server">
< title>Статья про SEO оптимизацию в ASP.NET 4< /title>
< meta name="keywords" content="seo, asp.net, c#, page.metakeywords, page.metadescription, response.redirectpermanent">
< meta name="decription" content="про новые инструменты seo-оптимизации в ASP.NET 4">
</head>

Одно из приятных новшеств в ASP.NET 4 это два новых свойства класса Page: MetaKeywords и MetaDescription, которые позволяют программно устанавливать управлять этими полями в ваших code-behind классах, делая это гораздо легче и чище.


Это особенно удобно, если вы используете MasterPage, и весь код

находится в нем.

Ниже приведен простой фрагмент кода, демонстрирующий установку этих свойств в рамках Page_Load():

void Page_Load(object sender, EventArgs e)
{
Page.Title="Статья про SEO оптимизацию в ASP.NET 4";
Page.MetaKeywords="seo, asp.net, c#, page.metakeywords, page.metadescription, response.redirectpermanent";
Page.MetaDescription="про новые инструменты seo-оптимизации в ASP.NET 4";
}

В дополнение к определению ключевых слов и описание свойств программно в code-behind, вы также можете теперь объявлять их в директиве @Page в верхней части .aspx страниц:

< % @Page Title=""
Keywords = ""
Description=""
MasterPageFile="~/Site.master"
CodeBehind="Products.aspx.cs"
Inherits="Webadpp1.Products" % >

Новая маршрутизация url (url rewriting) в Asp.Net 4


URL маршрутизации впервые появилась в ASP.NET 3.5 SP1, и она уже используются в приложениях ASP.NET MVC. Благодаря ей, Asp.NET генерит чистой, SEO-дружественные «веб 2.0» URL. URL маршрутизация позволяет настроить веб-приложение на корректную выдачу запрашиваемого контента, несмотря на то, что в действительности, на веб-сервере отсутствуют запрашиваемые файлы. Так мы можем генерить семантически значимые для посетителей url-ы, а заодно получаем бонусы поисковой оптимизации.

Например, такие URL-ы:
http://www.mysite.com/products.aspx?category=software
мы можем превратить в более дружественные:
http://www.mysite.com/products/software

В ASP.NET 4.0, человекопонятные URLы, теперь могут обрабатываться как ASP.NET MVC так и на ASP.NET Web Forms страниц. Так что теперь в приложении можно одновременно использовать и ASP.NET MVC так и на ASP.NET Web Forms и использовать единые правила для
url-rewriting-а.

Метод Response.RedirectPermanent()


Случается, что контент перемещается со своего постоянного адреса (например, если произошла реструктуризация сайта), это ведет к «отмиранию» ссылочной массы в поисковых системах. Метод RedirectPermanent() позволяет сообщить браузеру и поисковым системам что контент переехал.

Response.RedirectPermanent("NewFolder/Newpage.apx");

Response.RedirectPermanent дает ответ 301 (moved permanently) в отличие от Response.Redirect — 200 OK, что ведет к склейке PR и ТИЦ страницы по старому адресу с новым.
Response.RedirectToRoute() возвращает ответ 302 (temporary redirect)
Оба этих метода можно использовать и с URL маршрутизацией:

// вызывает 302 переадресацию
Response.RedirectToRoute("Products-Browse", new { category = "beverages" });

// вызывает 301 переадресацию
Response.RedirectPermanent("Products-Browse", new { category = "beverages" });

Можно использовать оба способа переадресовки как в ASP.NET MVC, так и ASP.NET Web Forms приложениях.

1 комментарий
Андрей 2011

Интересная статья. Практическая. Побольше бы таких.

Андрей.