繁体   English   中英

IIS上的301 URL编码

[英]301 URL encoding on IIS

因此,我尝试在我的网站上设置301重定向,并且所有新页面都使用JQUERY选项卡,因为JQUERY选项卡使用特定的ID来打开新选项卡,所以我尝试设置301的/folder/file.html#tabId。 所以我的301实际看起来像这样:

  • products / productname-overview.html-> /product/productname.html#overview
  • products / productname-features.html-> /product/productname.html#features
  • products / productname-specs.html-> /product/productname.html#specs

(所以我所有的内容现在都将放在一个页面中)

我目前正在使用IIS 8 ,我知道有一些规则可以对301上的几个字符进行编码,因此我也尝试对新的URL进行编码,但是当它检测到%时,ISS会告诉我这是无效的。

  • products / productname-overview.html-> /product/productname.html%23overview

错误日志: 从客户端(%)检测到潜在的Request.Path值。

说明:执行当前Web请求期间发生未处理的异常。 请查看堆栈跟踪,以获取有关错误及其在代码中起源的更多信息。

异常详细信息: System.Web.HttpException:从客户端(%)检测到一个潜在危险的Request.Path值。

源错误:当前Web请求的执行期间生成了未处理的异常。 可以使用下面的异常堆栈跟踪来标识有关异常的来源和位置的信息。

StackTrace: [HttpException(0x80004005):从客户端(%)检测到潜在危险的Request.Path值。] System.Web.HttpRequest.ValidateInputIfRequiredByConfig()+12353279 System.Web.PipelineStepManager.ValidateHelper(HttpContext上下文)+166

有没有一种方法可以仅对“#”字符制定规则? 有关如何解决此问题的任何建议? 谢谢!

您可以将片段的值传递到查询字符串中,然后使用js检索它,而不是重定向到片段。 您的重定向条目如下所示:

products/productname-overview.html -> /product/productname.html?fragment=overview

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM