gpt4 book ai didi

php - htaccess 删除 base 64 编码的 url 符号

转载 作者:搜寻专家 更新时间:2023-10-31 21:36:34 25 4
gpt4 key购买 nike

我最近才注意到这个..

我在 base64 编码上使用 urlencode 通过 url 发送加密的图像链接,因此 url 中有一些 %2B 的 ie + 符号。

当我在 php 中通过 GET 访问 url 时

image.php?q={encoded}

当我执行 $_GET['q'] 时,我得到了正确的数据而无需对其进行 urldecoding,即 %2B 将被翻译为 + 等....

但我最近写了一个 htaccess 这样做

 RewriteRule ^image/(.*)?$ image.php?q=$1 [NC,L]

当我访问 $_GET['q'] 数据时...所有 %2B 都已替换为空格等...所以我需要运行

str_replace(' ','+',$_GET['q']) 

然后解密得到图片链接..

知道为什么会这样吗?...我需要在 htaccess 中设置一些默认标准吗?感谢大家的帮助。

最佳答案

重写规则确实使用 Percent-Escape-Sequences 解码 URL,解码后的字符串再次放入查询字符串中,“%2B”现在是“+”,PHP 将它们解码为“”(空格).

mod_rewrite 有一个标志:B

查看文档:http://httpd.apache.org/docs/2.4/rewrite/flags.html#flag_b

关于php - htaccess 删除 base 64 编码的 url 符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17906908/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com