9

Я хочу реализовать URL-адрес дружественного SEO для моего веб-сайта ASP.NET MVC.Asp.net MVC SEO Дружественный URL

В настоящее время у меня есть URL, как:

http://www.domain.com/product?id=productid

, но теперь я хочу, чтобы переписать мой URL, как:

http://www.domain.com/productname

Так, пожалуйста, кто-нибудь может мне помочь выше ...

+3

Http: //ofps.oreilly. ru/title/9781449320317/ch_Routing.html –

ответ

9

Пожалуйста, попробуйте решение ниже. В global.asax.cs

routes.MapRoute(
    "Product", 
    "{productName}", 
    new { controller = "Product", action = "Index" }, 
    new { productName = UrlParameter.Optional } 
); 

Но вы обязаны поддерживать уникальность в productName и получать записи с тем, что в индексном действия контроллера продукта (т.е. в контроллере продукта:

public ActionResult index(string productName) 
{ 
    //do something regarding get product by productname 
} 
8

Вы можете добавить маршрут к вашему двигателю маршрутизации MVC таким образом -

В Global.asax.cs

routes.MapRoute(
    "Product", 
    "{controller}/{productId}/{productName}", 
    new { controller = "Product", action = "Index" }, 
    new { productId = UrlParameter.Optional , productName = UrlParameter.Optional } 
); 

Это позволит вам иметь URL как

www.domain.com/productid/productname 

Причина вы можете или не можете быть в состоянии достичь

www.domain.com/productname 

что PRODUCTNAME ISN» t идентификатор и не может использоваться для поиска записи однозначно. Вам потребуется идентификатор в URL-адресе.

Ex - посмотрите URL-адрес этого вопроса в SO, он имеет идентификатор, а затем добавляет дружественный к SEO тест.

+0

http://www.deliveron.com/blog/post/SEO-Friendly-Routes-with-ASPnet-MVC.aspx –

0

Создать новый маршрут в Global.asax, чтобы справиться с этим:

routes.MapRoute(
     "productId",     // Route name 
     "productId/{id}/{name}",  // URL with parameters 
     new { controller = "Home", action = "productId", id = 1234, name = widget } // Parameter defaults 
    ); 

Asp.Net MVC имеет маршрутизацию, построенный в, так что нет необходимости в Url Rewriter.

более

here детали

12

Это лучшая статья для начинающих -> SEO Friendly URls
В статье также объясняется, как удалить пробельные и тире.

Смежные вопросы