Hello! 欢迎来到小浪资源网!



如何解决大小写敏感的URL跳转问题?


如何解决大小写敏感的URL跳转问题?

如何解决大小写不敏感的内容地址跳转问题

您希望将包含小写路径(例如“http://xxxx/oa/pms/”)的地址重定向到相应的大写路径(“http://xxxx/oa/pms/”)。

解决方案

JavaScript 解决方案

在 index.html 页面中添加以下 javascript 代码:

// 监听页面加载事件 window.addeventlistener('load', function() {   // 检查当前 url 是否包含小写路径   if (window.location.pathname.tolowercase().includes('oa/pms/')) {     // 如果包含,则重定向到大写路径     window.location.href = window.location.pathname.replace('oa/pms/', 'oa/pms/');   } });

后端解决方案

  • 在您的控制器中添加以下代码:
[httppost] public actionresult handlelowercasepath(string path) {     // 检查路径是否是小写     if (path.tolower().contains("oa/pms"))     {         // 如果是小写,则重定向到大写路径         return redirecttoaction("index", "oa", new { path = path.replace("oa/pms", "oa/pms") });     }     else     {         return redirecttoaction("index", "home");     } }
  • 在您的 form 中添加以下代码:
<form action="@Url.Action("HandleLowerCasePath", "Home")" method="post">     <input type="hidden" name="path" value="@Html.Raw(Request.Url.PathAndQuery)" />     <input type="submit" value="Submit" /> </form>

注意:

  • 确保 iis 已配置为对路径大小写不敏感。
  • 如果使用 javascript 解决方案,则在您的页面上启用 javascript。

相关阅读