我需要发出重定向,使用。htaccess,与一个片段(也称为锚)的URL,但它会自动逸出#。

目前,我希望有一个硬编码的片段,但为他人着想,如果你知道如何把它从URL链接,将是不错的。

理想情况下,我应该能够使用QSA为好。

例如:

http://www.exameple.com/test?foo=bar

应成为

1) http://www.example.com/?foo=bar#MYVALUE

或从URL取片段:

2) http://www.example.com/?foo=bar#test

我的(非工作)代码看起来是这样的:

RewriteRule /test http://www.example.com/#MYVALE [R,QSA]
有帮助吗?

解决方案

我想我已经想通了......

RewriteCond %{HTTPS} off
RewriteCond %{REQUEST_URI} /test
RewriteRule ^test/?(.*)$ $1 [C]
RewriteRule ^(.*)$ http://%{HTTP_HOST}/$1?%{QUERY_STRING}#MYVALUE [NE,L,R]

RewriteCond %{HTTPS} on
RewriteCond %{REQUEST_URI} /test
RewriteRule ^test/?(.*)$ $1 [C]
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1?%{QUERY_STRING}#MYVALUE [NE,L,R]

这是一个有点差不得不为HTTP做一次,再为HTTPS - 我去看看我能找到周围的办法

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top