.htaccess URL 重写不适用于“?”作为数据的符号
.htaccess URL rewrite not work for "?" symbol as data
我想通过 URL ($_GET) 将此字符串传递到我的 php 文件。
7dDirSxvHg9h6Z4gHX9oo29SuN8k4dXV?Authority=000000000000000000000000000070816609&Status=OK
这是我的 .htaccess 代码
RewriteEngine on
RewriteRule ^([A-Za-z0-9-]+)/([A-Za-z0-9-]+)/(.*)$ index.php?page=&= [NC,L]
RewriteRule ^([A-Za-z0-9-]+)?$ index.php?page= [NC,L]
但是当我打开这个 url :
example.com/callback/Data/7dDirSxvHg9h6Z4gHX9oo29SuN8k4dXV?Authority=000000000000000000000000000070816609&Status=OK
var_dump 代码显示此字符串:
array(2) { ["page"]=> string(8) "callback" ["Data"]=> string(32) "7dDirSxvHg9h6Z4gHX9oo29SuN8k4dXV" }
后面有什么字符吗?符号已删除。我的代码的哪一部分不正确?
如果您希望它保留在查询字符串中,您需要在重写中使用 QSA
标志:
RewriteEngine on
RewriteRule ^([A-Za-z0-9-]+)/([A-Za-z0-9-]+)/(.*)$ index.php?page=&= [NC,L,QSA]
RewriteRule ^([A-Za-z0-9-]+)?$ index.php?page= [NC,L,QSA]
我想通过 URL ($_GET) 将此字符串传递到我的 php 文件。
7dDirSxvHg9h6Z4gHX9oo29SuN8k4dXV?Authority=000000000000000000000000000070816609&Status=OK
这是我的 .htaccess 代码
RewriteEngine on
RewriteRule ^([A-Za-z0-9-]+)/([A-Za-z0-9-]+)/(.*)$ index.php?page=&= [NC,L]
RewriteRule ^([A-Za-z0-9-]+)?$ index.php?page= [NC,L]
但是当我打开这个 url :
example.com/callback/Data/7dDirSxvHg9h6Z4gHX9oo29SuN8k4dXV?Authority=000000000000000000000000000070816609&Status=OK
var_dump 代码显示此字符串:
array(2) { ["page"]=> string(8) "callback" ["Data"]=> string(32) "7dDirSxvHg9h6Z4gHX9oo29SuN8k4dXV" }
后面有什么字符吗?符号已删除。我的代码的哪一部分不正确?
如果您希望它保留在查询字符串中,您需要在重写中使用 QSA
标志:
RewriteEngine on
RewriteRule ^([A-Za-z0-9-]+)/([A-Za-z0-9-]+)/(.*)$ index.php?page=&= [NC,L,QSA]
RewriteRule ^([A-Za-z0-9-]+)?$ index.php?page= [NC,L,QSA]