gpt4 book ai didi

apache - mod_rewrite 和图像重定向

转载 作者:行者123 更新时间:2023-12-01 15:18:26 24 4
gpt4 key购买 nike

我有一个包含大量图片的网站。假设这些图像存储在文件夹“/data/images”中。我还有一个带有水印图像的文件夹:“/data/wimages”。原始图像和带水印图像的文件名相同,但并非所有图像都有带水印的副本。因此,如果有水印副本存在,我想重定向原始图像(不更改其在浏览器或 html 源代码中的 URL),如果没有,则通过原始图像。我正在尝试使用 Apache mod_rewrite 解决这个问题:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -f # Checking if file exists and is a regular file.
RewriteCond %{REQUEST_URI} ^.*/data/images/.*\.(gif|jp?g|png)$ [NC] # Is file an image?
RewriteRule ^data/images/(.*\.(gif|png|jp?g))$ /data/wimages/$1 [NC] # New watermaked image url.
RewriteCond %{REQUEST_FILENAME} !-f # If watermarked image not exists ..
RewriteRule ^data/wimages/(.*\.(gif|png|jp?g))$ /data/images/$1 [NC,L]

然后我恢复之前更改过的 url 并得到一个无限循环!

有什么想法吗?

附言对不起我的英语。

最佳答案

RewriteEngine on

RewriteCond %{QUERY_STRING} !rewritten
RewriteCond %{REQUEST_FILENAME} -f
RewriteCond %{REQUEST_URI} ^.*/data/images/.*\.(gif|jpe?g|png)$ [NC]
RewriteRule ^data/images/(.*\.(gif|png|jpe?g))$ /data/wimages/$1?rewritten=1 [QSA,NC]

RewriteCond %{QUERY_STRING} !^rewritten=2
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^data/wimages/(.*\.(gif|png|jpe?g))$ /data/images/$1?rewritten=2 [QSA,NC,L]

关于apache - mod_rewrite 和图像重定向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6123028/

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