0

画像に透かしを入れるスクリプトがあります。

フォルダー内の画像 (thumb と thumbprofile) を除外する RewriteRule が必要です。このフォルダ内の画像には透かしがスタンプされないことを意味します

現在、私はこれを持っています

RewriteRule ^([^/thumb|^/profilethumb].*\.(gif|jp?g|png))$ watermark.php?image=$1&watermark=watermark.png [NC]

問題は、(thumb) の画像に透かしを入れないことです。これは正しいですが、フォルダー (profilethumb) には透かしをスタンプします。

4

3 に答える 3

1

多分これはあなたが必要とするものです:

Options +FollowSymlinks -MultiViews
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI}  !/(thumb|profilethumb) [NC]
RewriteCond %{REQUEST_URI}  !watermark\.php        [NC]
RewriteCond %{REQUEST_URI}  /([^.]+)\.(gif|jpg|jpeg|png) [NC]
RewriteRule .*  /watermark.php?image=%1.%2&watermark=watermark.png [NC,L]

私は、/thumb画像/profilethumbしかないので、両方のディレクトリをルールから除外するだけで十分だと思います。他のファイルがある場合、それらにも透かしを入れたくないと思います。

于 2013-04-19T09:40:08.987 に答える
0

thumb最初に 2 つのディレクトリをスキップしprofilethumbRewriteRuleURL パスを置き換えない を使用してから、2 番目のルールで他のすべての画像を処理できます。

RewriteRule ^(?:thumb|profilethumb).*\.(?:gif|jpe?g|png)$ - [L,NC]
RewriteRule ^.*\.(?:gif|jpe?g|png)$ watermark.php?image=$0&watermark=watermark.png [L,NC]
于 2013-04-19T11:47:47.307 に答える