具有SEO的asp.net core 2.0中的URL重定向问题

时间:2019-05-14 10:18:08

标签: asp.net url-rewriting seo asp.net-core-2.0

我有一个属性门户(在asp.net core 2.0中开发),在其中我遇到了SEO相关问题。 我有一个控制器(名称:explore)和一个索引操作,在其中显示属性列表。 出于搜索引擎优化的目的,我将网址设置如下

https://www.dubairent.com/properties-for-rent-in-dubai
https://www.dubairent.com/apartments-for-rent-in-dubai
https://www.dubairent.com/villas-for-rent-in-dubai

但不确定Google如何制作具有如下控制器名称的URL。

https://www.dubairent.com/explore/properties-for-rent-in-dubai
https://www.dubairent.com/explore/apartments-for-rent-in-dubai
https://www.dubairent.com/explore/villas-for-rent-in-dubai

enter image description here

当我们打开这些URL时,它最终将成为正确的URL。但这会导致SEO角度的重定向问题。 enter image description here

要解决这些问题,我必须永久重定向那些URL来更正它们。以下是我在探索控制器中的索引操作。

[HttpGet]
public async Task<IActionResult> Index(string param)
{ 
    // some logic
    return View(model);
}

任何人都可以帮忙。

1 个答案:

答案 0 :(得分:1)

如果要完全控制URL,最好总是使用属性路由。假设paramproperties-for-rent-in-dubai的一部分,则:

[Route("")]
public class ExploreController : Controller
{
    [HttpGet("{param}"]
    public async Task<IActionResult> Index(string param)

然后,/explore/从不成为URL的一部分,因为它将不再匹配。当然,您需要永久重定向这些URL以防止出现404错误,但这听起来像您已经解决了这个问题。

或者,您可以使用rel="canonical"标记来告诉搜索引擎页面的权威URL:

<link rel="canonical" href="https://www.dubairent.com/properties-for-rent-in-dubai" />

然后,即使搜索引擎在/explore/properties-for-rent-in-dubai处对该页面建立索引,它也会通过您指定的规范URL列出该页面。不过,值得注意的是,永久重定向具有相同的效果,所以最终,我不确定真正的问题是什么。