台灣最大裝潢接案平台
輕鬆接案網
租屋五星級服務搬家公司!價格優口碑好
專業團隊,老客戶推薦!

首頁  •  j2h 論壇 • 程式設計討論     • 

限制圖片外連用 .htaccess 檔案產生器

房東:龍龍
發表時間:2007-01-19


一般頻寬有限的論壇都希望圖片不要外連,而作法是建立一個 .htaccess 檔案放在論壇目錄下

底下這一個連結是幫助你產生 .htaccess 檔案用的

http://www.htmlbasix.com/disablehotlinking.shtml



  • 贊助網站       

    廣利不動產-新板特區指名度最高、值得您信賴的好房仲
    您的托付,廣利用心為您服務
    廣利不動產-板橋在地生根最實在--新板特區指名度最高、值得您信賴的好房仲
    完整房訊,房屋、店面熱門精選物件,廣利不動產 優質仲介,房屋租賃、買賣資訊透明,交易真安心!

  • 1 樓住戶:高手
    發表時間:2007-01-27

    用 mod_rewrite 防止偷圖以前我有一位客戶,他的網站流量十分大,經過檢查後發覺大部份的流量都用在圖片上,這也無可厚非,他的圖片解像度比較高,但另一個原因是有人在其他論壇貼上他的圖片,而貼圖的方法是直接使用他的圖片連結。我問過他的意見,他不介面別人貼出他的圖片,直接下載圖片再重新上載的話沒有問題,因為每張圖片也有出現他的網站名稱,只是不想人家浪費了他的流量。

    然後我覺得用 mod_rewrite 是較方便的做法,而如果你的網站也支援 mod_rewrite 功能,在 .htaccess 加上以下內容,也可防止給別人偷圖:

    RewriteEngine On
    RewriteCond %{HTTP_REFERER} ^http://www.anotherwebsite.com/.*$ [NC]
    RewriteRule ^/img/indieband\.jpg$ http://www.mydomain.com/nkotb.jpg [R]

    以上的第一行是開放 RewriteEngine,如果你的 .htaccess 已經有這一行就不用加上;第二行是其他網站的網址;第三行是將 /img/indieband.jpg 導向 /nkotb.jpg,而這個 /nkotb.jpg 可以是說明圖片出處的圖片。


    2 樓住戶:高手
    發表時間:2007-01-28

    簡易作法
    在Server上設定Referer防堵,
    很多人知道要在.htaccess上動手腳,設定

    <FilesMatch "\.(jpg|jpeg|gif|png)$">
    SetEnvIfNoCase Referer "^http://([^/]*\.)?your.server.name/" local_referrer=1
    Order Allow,Deny
    Allow from env=local_referrer
    </FilesMatch>

    就可以根據Referer防止jpg等檔案被盜連



    [編輯]說明
    設定 Apache mod_rewrite 來防止mod_rewrite on

    開啟 .htaccess 權限
    1.開啟 httpd.conf
    2.搜尋 AllowOverride None,或是只搜尋 AllowOverride 關鍵字
    3. 把 None 改成 ALL,表示完全接受 .htaccess 堛漫狾傅v限設定,然後存檔

    增加以下內容的 .htaccess 檔,放在網站目錄下即可。

    RewriteEngine on
    RewriteCond %{HTTP_REFERER} !^$
    RewriteCond %{HTTP_REFERER} !^http://lym.fyman.idv.tw(.*) [NC]
    RewriteRule \.(jpg|jpeg|gif|css|swf|png|bmp|rar|zip|exe)$ - [F]

    第一行為開啟 RewriteEngine,二三行設定允許的連線
    第四行則是從其他地方連進來且是那些檔名的,看到403錯誤訊息,也可以改成顯示指定的圖片。


    或是在網站目錄下的 .htaccess 檔中、或 httpd.conf 檔中加入下列內容即可:

    程式碼
    <FilesMatch "\.(jpg|jpeg|gif|png|zip|exe|swf)$">
    SetEnvIfNoCase Referer "^http://yourdomain.com/" local_referrer=1
    Order Allow,Deny
    Allow from env=local_referrer
    </FilesMatch>

    記得把 http://yourdomain.com/ 這一段改成自己的網站 URL
    [編輯]從設定檔下手
    注意!本教學只針對apache程式架設的主機有效!


    請修改 apache 中的 httpd.conf
    請找到下列文字:
    <Directory />
    Options All
    AllowOverride All
    </Directory>


    修改為:
    <Directory />
    Options FollowSymLinks Includes
    AllowOverride AuthConfig Limit
    <Limit GET POST OPTIONS PROPFIND>
    Order allow,deny
    Allow from all
    </Limit>
    SetEnvIfNoCase Referer \"^http://www1.xxx.com/ (http://www1.xxx.com/)\" local_ref=1
    SetEnvIfNoCase Referer \"^http://www2.xxx.com/ (http://www2.xxx.com/)\" local_ref=1
    <FilesMatch \"\\.(gif|jpg|jpeg|JPG|GIF|JPEG)\">
    Order Allow,Deny
    Allow from env=local_ref
    </FilesMatch>
    </Directory>


    其中的http://www1.xxx.com/為您欲設限的網址,可增加減少...
    再其中的(gif|jpg|jpeg|JPG|GIF|JPEG)內為欲設限的檔案副檔名,您可自行修改!


    但要記得, 如果你網頁中有使用其他程式來呼叫絕對路徑的圖片時,
    請一律修改成相對路徑, 否則那些圖片也會變成叉燒包的.




     共 2 人回應  選擇頁數 【第1 頁】 

    姓名:
    佈告內容:
    其他選項: