防止直接呼叫文件

防止直接呼叫文件

我什至不確定這是否可能;我在 apache 伺服器上。對於位於以下位置的檔案:

http://www.example.com/dir/img.jpg
  • 允許將此圖像載入到從該目錄呼叫的頁面中。
  • 禁止直接載入該圖片; IE。上面的網址不應載入
  • 防止從其他地方的頁面連結此圖像

目的是文件應該只能顯示在其指定的特定頁面上;它不應該是直接可見的。這可以做到嗎?

答案1

來自阿帕奇文檔:

阻塞的內嵌影像

描述:假設我們有 http://www.quux-corp.de/~quux/一些有內嵌 GIF 圖形的頁面。這些圖形很漂亮,因此其他人直接透過超連結將它們合併到他們的頁面中。我們不喜歡這種做法,因為它會為我們的伺服器增加無用的流量。

解決方案:雖然我們不能 100% 保護映像不被包含,但我們至少可以限制瀏覽器發送 HTTP Referer 標頭的情況。

RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://www.quux-corp.de/~quux/.*$ [NC]
RewriteRule .*\.gif$        -                                    [F]

RewriteCond %{HTTP_REFERER}         !^$
RewriteCond %{HTTP_REFERER}         !.*/foo-with-gif\.html$
RewriteRule ^inlined-in-foo\.gif$   -                        [F]

相關內容