2014-09-06 102 views

回答

0

您可以使用referer頭來確定要顯示的圖像。請注意,有些用戶可能使用隱私工具來隱藏引用者頭部到服務器。當他們這樣做時,希望他們將空白的領域,而不是填充垃圾。出於這個原因,您應該爲一個空的引用者和一個包含domain.com的圖片加載picture.jpg,以便正確的圖片始終顯示在您的網站上。它可能會在不同的網站上加載錯誤的圖片,但這不是一個問題。

說你在你的html頁面鏈接到http://www.domain.com/picture.jpg。然後,可以使用以下的mod_rewrite規則:

RewriteEngine on 

RewriteCond %{HTTP_REFERER} !(domain\.com|^$) 
RewriteCond %{REQUEST_URI} !-2\.jpg 
RewriteRule ^(.*)\.jpg$ $1-2.jpg [L] 

取決於正是你想做的事,例如顯示與版權信息的頁腳,你可以使用不同的方法,即是頁腳是圖像中不管的網站,但頁腳在您的網站上被刪除。這種方法的優點是你只有1個版本的圖像,並且它總是在你的網站上正確顯示。這個解決方案的意義在於,如果盜鏈網站很聰明,他們也會挖出該頁腳。在下面的例子中,我們有一個200x200px的圖片。只有上半部分是可見的:

<img src="http://placekitten.com/g/200/200"> 

CSS:

img { 
    position: absolute; 
    clip: rect(0px 200px 100px 0px); 
} 

上的jsfiddle:http://jsfiddle.net/myz8gq1f/

+0

您好,我很抱歉,但我不明白你想顯示什麼,我有一個文件夾,它是上傳中心之前命名(上),現在它不包含任何文件,因爲有很多網站與該中心上傳的圖像熱鏈接,他們正在吃我的bandwith,我想顯示一張圖片(nothotlink.jpg)在所有這些網站上,但是如果舊圖片在同一個fol der是從我自己的網站(domain.com)調用的,它應該顯示1x1像素圖片。 – Sassou 2014-09-06 13:58:43

+0

第一件事是你要求的。第二件事是不同的方法,這對你的情況沒有幫助。 – Sumurai8 2014-09-06 18:27:05