解决ASP.NET空格转换为+号的问题
在百度站长管理中心抓取异常处居然看到自己的网站有存在抓取异常的情况,如下图:
分析了一下原因,是因为标签中含有了空格,使用Server.UrlEncode对标签进行了编码后空格变成了+号,然后URL伪静态又无法识别,最终导致了404状态,百度的蜘蛛则认为网页不存在.
因时间原因,直接用暴力的解决方案:
Server.UrlEncode(要编码的URL).Replace("+","%20")
将+号直接替换为%20即可.
其实网上还有一个解决方法,直接在web.config加入如下代码:
<security>
<requestFiltering allowDoubleEscaping="true"/>
</security>
这个方法可能会带来其他的影响,所以暂时没用以上这个方法.
相关文章
- visual studio 2022 运行项目报错:HTTP Error 500.24 - Internal Server Error 检测到在集成的托管管道模式下不适用的 ASP.NET 设置。
- vs运行时提示:此项目已配置为使用SSL。为了避免浏览器中出现SSL警告
- asp.net未能加载文件或程序集“System.Data.SQLite”或它的某一个依赖项。试图加载格式不正确的程序
- 51aspx上传一份源码需要多久才能审核完成?
- sqlite数据库:Library used incorrectly No transaction is active on this connection
- 此项目引用这台计算机上缺少的 NuGet 程序包。使用 NuGet 程序包还原可下载这些程序包
- c#判断枚举是否存在某个值
- 准备将博客wordpress程序切换为自己用ASP.NET开发的博客程序
- asp.net的网站报错:处理程序“PageHandlerFactory-Integrated”在其模块列表中有一个错误模块…
- C# ASP.NET获取枚举集合
文章评论
热门评论
暂无评论