301在URL中使用#重定向到域

问题描述 投票:1回答:1

我目前正在尝试重定向以下内容:

bar.com/foo ====> bar.com/bar.html#/#

我的重定向规则如下:

RewriteEngine On
RewriteRule ^/foo$  bar.com/bar.html#/#  [R=301,L,NC]

这是我运行测试卷曲时的输出:

301 http://bar.com/foo ======>
https://bar.com/bar.html%23/%23

它返回301 HTTP响应;但是,这些%23个字符是编码指示,#将在重定向后出现在URL中,还是URL的文字表示?如果这不正确,我有什么需要逃脱的吗?

在此先感谢您的帮助。

regex apache redirect url-redirection http-status-code-301
1个回答
2
投票

使用NE选项来避免编码:

RewriteEngine On

RewriteRule ^/?foo/?$ /bar.html#/# [R=301,L,NC,NE]

确保在新浏览器中测试它以避免旧缓存。

© www.soinside.com 2019 - 2024. All rights reserved.