1

我希望将指向图像数据库中图像的链接重定向到带水印图像的缓存副本。运行我的站点的脚本程序使用图像所在的子文件夹名称并附加原始文件名 (.jpg) 来重构带水印的文件名,并在重构文件名的两个组成部分的开头各有一个波浪号。

示例:位于此处的原始文件:
/mainFolder_files/1/image_Category/102_3456-crop.jpg
新路径应为:
/mainFolder_files/cache/images/~image_Category~102_3456-crop.jpg

图像文件名通常包括下划线、连字符、数字和文本,但总是以 .jpg 结尾。“image_Category”文件夹可能包含也可能不包含下划线。

任何人都可以建议将捕获原始数据并以修改后的方式重写它的正则表达式,如图所示?

这是一个 CGI 脚本驱动程序,因此有关 Mod-Rewrite 语法的帮助也会有所帮助。

谢谢你,艺术头脑

4

1 回答 1

1

通过启用 mod_rewrite 和 .htaccess httpd.conf,然后将此代码放在您.htaccessDOCUMENT_ROOT目录下:

Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /

RewriteRule ^(ImageFolio4_files)/1/([^/]+)/((?!AM|tn_)[^.]+\.jpg)$ /$1/cache/images/~$2~$3 [L,R=302,NC]

确认它工作正常后,替换R=302R=301. R=301在测试你的 mod_rewrite 规则时避免使用(永久重定向)。

于 2013-06-04T05:24:50.040 回答