asp.net – 如何使用IIS重定向URL中的额外正斜杠
这个问题最适用于示例.
说我的网络应用程序托管在http://example.com/WebApp/ According to Microsoft,如果缺少前瞻性斜杠,IIS将重定向.这可以按预期工作:发送到http://example.com/WebApp的请求会重定向到http://example.com/WebApp/. 现在,在我的情况下,有人使用额外的正斜杠为URL添加了书签:http://example.com/WebApp//.这将按预期加载Web应用程序,但现在所有相对URL都是错误的.因此,如果我在同一个域上调用另一个应用程序,例如../AnotherApp/SomePage.aspx,那么它将尝试加载/WebApp/AnotherApp/SomePage.aspx,而不是正确加载/AnotherApp/SomePage.aspx. 如何将http://example.com/WebApp//重定向到http://example.com/WebApp/? 解决方法
单独使用服务器端脚本似乎很难做到这一点.也许在JavaScript中进行重定向就足够了?
<html> <head> <script type="text/javascript"> (function () { var protocol = location.href.substr(0,location.href.indexOf("://")); var restOfUrl = location.href.substr(location.href.indexOf("://") + "://".length); if (restOfUrl.match(////)) { location.href = protocol + "://" + restOfUrl.replace(////g,"/"); } })(); </script> </head> <body> ... </body> </html> 此外,您应该考虑在页面中设置canonical link,以便搜索引擎正确地索引内容. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net – Mono apache2 =服务暂时不可用(503)
- asp.net – 隐藏字段vs viewstate
- asp.net-mvc – 从OWIN身份验证中间件中考虑控制器属性
- ASP.NET页面事件 – 在GridView绑定之后发生按钮单击事件
- 从ASP.net Web服务返回大量数据时有哪些好的做法?
- asp.net – 如何让静态Html页面通过IIS7.0中的HttpModule?
- asp.net-mvc – formcollection只保存所选的html.listbox项
- ASP.NET MVC URL在CSS文件中自动解析
- asp.net – NPOI – 从模板文件创建的保存工作簿
- asp.net-mvc – asp.net mvc我为我的模型使用了太多的类吗?
- asp.net – 在部署到SharePoint时,ObjectDataSou
- asp.net – 如果Elmah无法访问数据库以记录异常,
- asp.net-mvc-3 – MVC关注点分离
- 在ASP.NET MVC3中实现的示例项目插件jquery文件上
- ASP.NET:存储应用程序设置的位置?
- ASP Classic中的HTTP身份验证(基本或摘要)通过II
- HTTPModules和Global.asax – ASP.NET页面生命周
- ASP.NET SQL成员资格表
- asp.net-mvc-3 – ASP.NET MVC 3.0 Razor,从任何
- asp.net-mvc – 为什么ASP.NET在静态图像请求上形