2

htaccessを使用してホットリンクを許可したいのですが、誰かが私のサイトで画像を見た場合、ナビゲーションなどを表示する「ホストされた」バージョンの画像にリダイレクトしたい.

したがって、基本的に外部サイトからホットリンクしているユーザーは影響を受けませんが、誰かがサーバー上の画像を直接表示した場合、つまり www.domain.com/image.jpg はリダイレクトされます。また、サイト内からも画像を正しく表示できるようにしたいと考えています。

誰でも助けることができますか?

編集:ここに私が現在持っているコードがあります

RewriteCond %{REQUEST_FILENAME} \.jpg$
RewriteCond %{HTTP_REFERER} =""
RewriteRule ^userpics/covers/(.*).jpg$ /view/$1.html [R=301]

RewriteRule ^view/(.*).html$ /view.html?img=$1 [L]

ありがとう

4

3 に答える 3

0

HTTP_REFERRER が空の場合は mod_rewrite を使用する必要があります。リダイレクト先は次の/image-with-nav.php?image=$1
ようになります。
RewriteEngine on

RewriteCond %{HTTP_REFERER} ^$

.* image-with-nav.php?image=$1 [L]

于 2010-02-28T20:17:57.060 に答える
0

ここで確認する必要があるのはリファラーです。これは、http 要求であるため、URL は常に画像の URL であるためです。次のようなものを使用できます。

RewriteCond %{REQUEST_FILENAME} \.(jpg|png|gif)$
RewriteCond %{HTTP_REFERER} =""
RewriteRule (.*) http://someurl.com [R=301]
于 2010-02-28T20:19:50.430 に答える