Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc ASP.NET MVC中的小写URL_Asp.net Mvc_Asp.net Mvc Routing - Fatal编程技术网

Asp.net mvc ASP.NET MVC中的小写URL

Asp.net mvc ASP.NET MVC中的小写URL,asp.net-mvc,asp.net-mvc-routing,Asp.net Mvc,Asp.net Mvc Routing,是否可以强制/扩展路由引擎以小写形式生成URL,将/controller/action改为/controller/action @所有人都在问这是否重要:是的,我认为这很重要。将url全部小写看起来更好 每当你不能尽可能地把东西弄得好看时,比尔·巴克斯顿就会杀了一只小猫。此外,你应该强制将任何大写的传入请求重定向到小写版本。搜索引擎对URL区分大小写,这意味着如果您有多个指向同一内容的链接,则该内容的页面排名将被分发,从而被稀释 为这些链接返回HTTP 301(永久移动)将导致搜索引擎“合并”这

是否可以强制/扩展路由引擎以小写形式生成URL,将
/controller/action
改为
/controller/action

@所有人都在问这是否重要:是的,我认为这很重要。将url全部小写看起来更好


每当你不能尽可能地把东西弄得好看时,比尔·巴克斯顿就会杀了一只小猫。

此外,你应该强制将任何大写的传入请求重定向到小写版本。搜索引擎对URL区分大小写,这意味着如果您有多个指向同一内容的链接,则该内容的页面排名将被分发,从而被稀释

为这些链接返回HTTP 301(永久移动)将导致搜索引擎“合并”这些链接,因此只保留对您的内容的一个引用

将类似的内容添加到您的
Global.asax.cs
文件中:

protected void Application_BeginRequest(object sender, EventArgs e)
{
    // Don't rewrite requests for content (.png, .css) or scripts (.js)
    if (Request.Url.AbsolutePath.Contains("/Content/") ||
        Request.Url.AbsolutePath.Contains("/Scripts/"))
        return;

    // If uppercase chars exist, redirect to a lowercase version
    var url = Request.Url.ToString();
    if (Regex.IsMatch(url, @"[A-Z]"))
    {
        Response.Clear();
        Response.Status = "301 Moved Permanently";
        Response.StatusCode = (int)HttpStatusCode.MovedPermanently;
        Response.AddHeader("Location", url.ToLower());
        Response.End();
    }
}

是的,我想是的。不确定它是否有任何SEO的影响,但它看起来确实好得多。我认为任何人谁已经混合或混音在过去的12个月,必须坐在通过大比利B的(令人钦佩的相当有趣)强调设计需要在产品中烘焙的重要性。请注意,这也将考虑查询参数的大小敏感度,这可能取决于应用程序(可能对我所做的一些事情而言)。