Apache mod_rewrite 从图像请求 uri 中取出 @2x

Apache mod_rewrite 从图像请求 uri 中取出 @2x

对于严重的服务器崩溃问题,我尝试匹配对 @2x 视网膜风格图像的任何请求,并将其重写为非 @2x 等效图像。

首先我想检查这是否是这样的请求:

# NOTES: Check the file name to see if it matches the @2x pattern:
RewriteCond %{REQUEST_FILENAME} ^(.*)(@2x\.\w+)$ [NC]

例如:

媒体/目录/产品/缓存/1/缩略图/100x/9df78eadfvrtdfgdfg6e5fb8d27136e95/i/n/[电子邮件保护]

然后我只需要取出@2x 并返回:

媒体/目录/产品/缓存/1/缩略图/100x/9df78eadfvrtdfgdfg6e5fb8d27136e95/i/n/insample-123_1.jpg

可以是 png 或 jpeg 或 PNG 或 gif 等。

我不是 RegExp 忍者。我知道如何替换部分,但不知道如何删除。有人可以帮忙吗?我的服务器因为 404 而崩溃了……

编辑:好像是:

RewriteCond %{REQUEST_FILENAME} ^(.*)(@2x\.\w+)$ [NC]
RewriteRule (.+)@2x\.(\w+)$ $1.$2 [R=302]

相关内容