我有这样的图像 -http://www.site1.com/upload/long/long/long/long-path/image.jpg 我需要将文件夹上传中的所有图像重定向到另一个站点并剥离路径。
示例 site1.com/upload/long/long/long/long-path/image.jpg ---> site2.com/image.jpg
我尝试构建的 Mod_rewrite 指令如下所示:
Options +FollowSymLinks
RewriteEngine ON
RewriteCond %{REQUEST_URI} "/upload/"
RewriteCond %{REQUEST_FILENAME} .*\.(jpeg|jpg|gif|png)$
RewriteRule (.+) site2.ru/$1 [QSA,R,L]
但是此代码没有删除长路径。
答案1
(.+)
捕获整个路径。由于您只想匹配文件名,因此您需要编写类似这样的表达式^/upload/.+/([a-z]\.(jpeg|jpg|gif|png))$
。补充范围亚利桑那州包含文件名中可以包含的任何字符。