作者Beecool (becool)
看板PHP
標題[請益] 使 flv 可撥放但不能下載的方法
時間Tue Dec 6 01:35:49 2011
小弟最近在處理禁止 user 從 server 上檔案下載 jpg 及 flv 的功能
google 後發現可以用 .htaccess 的方式處理
------------------------
SetEnvIfNoCase Referer "^
http://domain.com/" ref=1
<FilesMatch ".(flv|jpg)$">
Order allow,deny
Allow from env=ref
Allow from 127.0.0.1
</FilesMatch>
------------------------
但是此 .htaccess 對 jpg 是有用:
直接輸入 jpg 網址會 permission deny,但可以在
http://domain.com/ 下的頁面載入
不過對於嵌入於 flash 的 flv,卻是
chrome 可以用 flash 撥放,直接輸入 flv 網址不能載 ( 我要的 )
IE, firefox,直接輸入 flv 網址不能載,但也不能用 flash 播放 ( 我要可以撥放 )
我把 .htaccess 改寫成以下也是一樣的結果
---------------------------
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^
http://domain.com/.*$ [NC]
RewriteRule \.(jpg|flv)$ - [F]
---------------------------
google 了快兩天,都是一樣的結果。
想請問各位高手,這是否有解決的方式呢 ?
還是這真的無解呢 ? 先感謝了 !!!
--
※ 編輯: Beecool 來自: 114.37.152.107 (12/06 01:38)
1F:→ minejel:有萬惡的暫存檔就沒有不能下載的影片.... 12/06 01:59
2F:→ chrisQQ:我覺得第二個寫法檢查 referee 應該沒錯,看一下 apache 12/06 02:14
3F:→ chrisQQ:中 rewrite 的 access log ? 12/06 02:14
4F:→ guardlan:寫隻php做吐圖跟吐flv用..然後用mod rewrite把所有的圖片 12/06 12:44
5F:→ guardlan:跟flv都導給那隻php,由php做referer及其他的檢查,通過 12/06 12:46
6F:→ guardlan:才顯示圖片不然吐403出去..雖然referer也可以偽造.. 12/06 12:46