regex - 使用 RewriteRule 从重定向中删除主题标签

标签 regex mod-rewrite

我目前正在通过获取变量并将其插入到新 URL 中来重定向 URL。就像这样:

RewriteCond %{QUERY_STRING} &pid=([0-9]*)$
RewriteRule ^vault/displayimage\.php$ photos/%1/? [R=301,L]

不幸的是,某些链接在旧系统中具有不需要的主题标签,因此我想在没有它们的情况下进行重定向(或将其剥离)。前任。 - 通过上面的重定向,我们采取类似

/vault/displayimage.php?album=5&pid=10#top_pictures

重定向到

/photos/10/#top_pictures

我希望它只是这样

/photos/10/

感谢您的任何提示!

最佳答案

位置哈希仅存在于浏览器中,永远不会发送到服务器。因此,您无法通过重写规则影响它们。

这就是 people advise against using them 的原因之一.

另请参阅URL Fragment and 302 redirects

关于regex - 使用 RewriteRule 从重定向中删除主题标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13790460/

相关文章:

python - 正则表达式在Python中提取所有单词对及其分别后3个单词和前3个单词

regex - 我可以否定 POSIX 括号表达式吗?

regex - '\K' 在此正则表达式中意味着什么?

mod-rewrite - 为 SEO 重写单页模组

redirect - 使用 SSL 的 www 重定向的 mod_rewrite

javascript - 从任何类型的网址中提取域名

regex - 正则表达式匹配空格但在行尾

Apache - 将 301 pdf 重定向到带空格的 pdf(二进制文件)

.htaccess - 如何将不发送到特定目录的请求传递到index.php/path?

php - 在 URL 中省略 index.php 时,在 Slim Framework 中总是出现 404 错误