重定向目录但排除子目录

时间:2014-08-13 12:48:43

标签: php wordpress .htaccess redirect amazon-s3

所以我们有一个wordpress网站,我们使用插件将wp-content / uploads目录中的所有文件推送到Amazon S3。但是,我们使用视频插件,该插件需要使用临时文件夹中的uploads目录来生成视频缩略图。

由于我们有重写规则(如下所示)将/ wp-content / uploads重定向到相关的S3地址,这对于使后端正常运行至关重要,因此会导致临时文件夹出现问题。

RedirectPermanent /wp-content/uploads/ [amazonbucketurl]/wp-content/uploads/

我们需要的是一个重定向规则,该规则可以放在.htaccess文件中,并从/ wp-content / uploads的一揽子重定向规则中排除/ wp-content / uploads / thumb_tmp。

任何帮助都会很棒!

2 个答案:

答案 0 :(得分:1)

尝试此规则:

RedirectPermanent /wp-content/uploads/(?!thumb_tmp).* [amazonbucketurl]/wp-content/uploads/

此处(?!thumb_tmp)用于排除重写thumb_tmp子文件夹。

答案 1 :(得分:0)

这最终奏效了!

RewriteCond %{REQUEST_URI} !^/wp-content/uploads/thumb_tmp/.*
RewriteCond %{REQUEST_URI} !^/wp-content/uploads/thumb_tmp$
RewriteRule ^wp-content/uploads/(.*)$ http://dingvideo-europe-array.s3.amazonaws.com/wp-content/uploads/$1 [R=301,L]

它的工作原理是在uploads文件夹上运行重写规则,但不包括thumb_tmp目录。