Problem:访客打开网址website.com/?i=133r534|213213|12312312但此网址不再有效,需要将其转发到website.com/#视频:133r534|213213|12312312
我尝试过的:在过去的几个小时里,我使用 Query_String 尝试了许多 mod_rewrite (.htaccess) 规则,但都失败了。最后一条消息在这个话题 http://forum.modrewrite.com/viewtopic.php?t=3912显示了这个问题的解决方案,但在我的情况下规则是什么。
我很好奇你会如何解决这个问题:)!
下面将处理您展示的简单情况。如果您需要在查询字符串或 ? 之前的文件名中允许使用其他参数,则需要添加其他逻辑。
RewriteEngine On
RewriteCond %{QUERY_STRING} ^i=(.*)
RewriteRule ^.* /#Video:%1? [NE,R=permanent]
为什么这很棘手?
- RewriteRule 不查看查询字符串,因此您必须使用 RewriteCond 来计算 QUERY_STRING 变量并捕获稍后需要的部分(通过 %1 引用)
- 哈希字符 (#) 通常会被转义,您必须指定 [NAME] 标志
- 尾随的 ?需要使用替换字符串来抑制原始查询字符串
我在 Apache 2.2 上对此进行了测试。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)