0

我正在尝试以以下格式将规范链接添加到我的母版页的头部(基本上删除任何查询字符串参数):

<link rel="canonical" href="http://www.domain.com/friendly-url/" />

假设有人通过以下 URL 访问了该页面,我将如何从 url 中删除查询字符串,以便创建上面的规范链接?

http://www.domain.com/friendly-url/?source=google

我试过使用 Request.RawUrl 但这会返回查询字符串以及友好的 url。规范链接的全部意义在于显示我们要索引的页面的首选版本,在我们的例子中,这就是 URL 减去查询字符串中的任何内容。友好的 URL 使这个变得复杂,因为我认为它限制了我使用 Request.RawUrl,除非有人能告诉我不同​​?

4

1 回答 1

0

上课Uri并从中删除查询字符串:

Uri uri = HttpContext.Request.Url;
string friendlyUrl = uri.OriginalString.Remove(uri.OriginalString.IndexOf(uri.Query));
于 2013-11-07T17:58:06.140 回答