gpt4 book ai didi

regex - Apache mod_rewrite 将双斜杠转换为一个斜杠

转载 作者:行者123 更新时间:2023-12-01 04:49:52 25 4
gpt4 key购买 nike

我有一个这样的网址:

http://example.com/img.php?url=http://example2.com/path/to/image/name.jpg

所以我在这个问题的帮助下创建了一个规则 Apache mod_rewrite complex URL regex

RewriteRule  ^img.php\/(.+?(?:\.jpg|\.png))$  img.php?url=$1

但是当我在 htaccess 文件中使用此规则并使用相同的 URL 时:

http://example.com/img.php/http://example2.com/path/to/image/name.jpg

在我的参数中 http: 之后的结果双斜杠转换为一个斜杠!所以我在 php 中的第一个参数变成了:

http:/example2.com/path/to/image/name.jpg

你能帮帮我吗?

最佳答案

Apache 在 RewriteRule 中将多个 / 剥离为单个 /。使用 RewriteCond 代替:

RewriteCond %{REQUEST_URI} ^/img\.php/(.+?\.(?:jpe?g|png))$ [NC]
RewriteRule ^ img.php?url=%1 [L,QSA]

关于regex - Apache mod_rewrite 将双斜杠转换为一个斜杠,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28061289/

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