如何在asp.net中强制使用小写网址?

时间:2014-08-07 17:21:21

标签: asp.net webforms

我正在浏览我们的网站并将所有网址转换为小写以获取缓存原因。我将向所有开发人员发送一封电子邮件,并将其作为我们使用所有小写网址的标准,但我知道他们最终会忘记并且混合案例网址最终会潜入网站。有没有一种好的方法来检查响应中的URL并将它们转换为小写?

我可能会在请求方面做同样的事情,以确保请求的URL是小写的,我认为可以通过url重写规则来完成。

对于我提出的建议,是否会产生很大的影响?

1 个答案:

答案 0 :(得分:1)

如果路径包含大写字符,那么主页中的302永久重定向怎么样?

if (Request.Url.AbsolutePath.Any(char.IsUpper))
{
    Response.RedirectPermanent(Request.Url.Scheme + "://" +
        Request.Url.Host +
        (Request.Url.Port != 80 ? ":" + Request.Url.Port.ToString() : string.Empty) +
        Request.Url.AbsolutePath.ToLowerInvariant() +
        Request.Url.Query);
}