【问题标题】:mod_rewrite with anchor link带有锚链接的 mod_rewrite
【发布时间】:2010-04-21 19:46:36
【问题描述】:

我知道您不能将锚 URL 重定向到另一个页面,但是是否可以将 URL 重定向到仅一个锚?

所以

http://www.example.com/video/{title}

总是被发送到

http://www.example.com/video.php?title={title}#player

唯一改变的是标题,锚总是一样的。我需要重定向到结尾滑块上的某个幻灯片

【问题讨论】:

    标签: apache .htaccess mod-rewrite anchor


    【解决方案1】:
    RewriteRule ^/video/(.*) /video.php?title=$1#player [NE,L,R=301]
    

    NE|noescape

    默认情况下,特殊字符(例如 & 和 ?)将被转换为对应的十六进制代码。使用 [NE] 标志可以防止这种情况发生。

    来源:http://httpd.apache.org/docs/current/en/rewrite/flags.html

    【讨论】:

    • NE-Flag 对于Apache/2.4.6 是未知的。 httpd -V 记录以下内容:RewriteCond: unknown flag 'NE'
    【解决方案2】:

    如果您指定 NE 标志(无转义),您应该能够在重定向规则中使用 # 符号

    【讨论】:

    • 谢谢 Dan,好像也需要 301 重定向
    • 我不需要 301,但如果您使用永久重定向,在浏览器中点击刷新可能会使用缓存(转义)重定向规则。清除缓存或尝试使用其他浏览器。
    猜你喜欢
    • 2013-02-08
    • 2010-10-30
    • 2014-10-24
    • 1970-01-01
    • 1970-01-01
    • 2014-08-10
    • 2014-06-22
    • 2021-11-15
    • 2015-07-28
    相关资源
    最近更新 更多