• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            Welcome to 陳俊峰's ---BeetleHeaded Man Blog !

              C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
              58 隨筆 :: 32 文章 :: 18 評論 :: 0 Trackbacks
            防盜鏈原理:

              http標準協議中有專門的字段記錄referer

              一來可以追溯上一個入站地址是什么

              二來對于資源文件,可以跟蹤到包含顯示他的網頁地址是什么。

              因此所有防盜鏈方法都是基于這個Referer字段

              網上比較多的2種

              一種是使用apache文件FileMatch限制,在httpd.conf中增加 ( 其實也可以將把下面的語句存成一個.htaccess文件),并放到你的網站的根目錄(就是www/html目錄),這樣子別人就沒有辦法盜連你的東東了~~

              SetEnvIfNoCase Referer "^http://yahoo.com/" local_ref=1

              Order Allow,Deny

              Allow from env=local_ref

              Allow from 127.0.0.1

              這種很方便禁止非允許訪問URL引用各種資源文件

              請大家注意,把第一句"^http://yahoo.com/"改為你的網站,比如我的網站是: http://www.linji.cn

              我應該這么寫的

              "^http://www.linji.cn/"

              第二種是使用rewrite,需要增加apache的mode_rewrite,支持.htaccess文件目錄權限限制

              在虛擬主機根目錄增加.htaccess文件,描述從定向,把非本地地址refer的圖片文件都從定向到警告圖片或者警告網頁上。

              首先要確認你的服務器或空間的服務器解譯引擎為Apache2,還有支持.htaccess客戶設置文件,

              如果你有自己的服務器就請先對./conf/httpd.conf 文件做以下修改

              找到:#LoadModule rewrite_module modules/mod_rewrite.so

              把前面的 # 給去丟

              找到等一個 AllowOverride None 改為 AllowOverride All

              重啟Apache2服務器

              接下就是做一個 .htaccess 文件了,其 .htaccess 文件內容為

              RewriteEngine on

              RewriteCond %{HTTP_REFERER} !^http://aaoo.net/.*$ [NC]

              RewriteCond %{HTTP_REFERER} !^http://aaoo.net$ [NC]

              RewriteCond %{HTTP_REFERER} !^http://www.aaoo.net/.*$ [NC]

              RewriteCond %{HTTP_REFERER} !^http://www.aaoo.net$ [NC]

              RewriteRule .*.(jpg|jpeg|gif|png|bmp|rar|zip|exe)$ http://down.yoyo.com.ru/err.html [R,NC]

              其中有色的地方都是要改為你的:

              紅色:就是改為你提供下載頁面的地址,也就是只有通過這個地址才可以下載你所提供的東東。

              藍色:就是要保護文件的擴展名(以|分開),也就是說以這些為擴展名的文件只有通過紅色的地址才可以訪問。

              綠色:如果不是通過紅色的地址訪問藍色這些為擴展名的文件時就回重定向到綠色地址上。

              這個方法有個好處是,不同的虛擬主機用不同的描述定義。

              接下就是怎么用 .htaccess 文件來實現防盜鏈了。

              首先要在空間上建兩個目錄(當然目錄名隨你),一個為 web 另一個為 down ,

              web 是用來放下載頁面的(或下載程序),down 當然就是放你提供的東東的啦,

              把 .htaccess 文件的紅色部分改一下,改為http://你的域名/web。藍色部分

              改為你要保護文件的擴展名。綠色部分改為http://你的域名/web。改后保存

              .htaccess 文件把它上傳到 down 目錄。

              還有第三種:

              我在解決plog禁止盜鏈的時候,發現個問題,也算個好方法。

              plog把所有資源都自己管理起來,用resserver.php來動態顯示,這樣統一的入口方便添加權限操作。

              同時造成上面2種方法無法使用,因為不再是apache直接訪問資源文件,而是php通過文件讀取。

              因此只能在代碼中做手腳:在讀取資源文件輸出之前,加如下判斷代碼

              引用

              $referer = $_SERVER['HTTP_REFERER'];

              $selfurl = $_SERVER['HTTP_HOST'];

              if(false == strpos($referer,$selfurl))

              {

              echo '非法盜鏈!';

              exit(1);

              }

              這里有些偷懶,直接看引用地址中是否包含host地址,不過原理就是這樣,判斷referer是否是本站地址。

              我們常常在下載的時候,也碰到盜鏈網站無法下載,報盜鏈的問題。要下載這類文件最簡單的方法就是改referer

              比方flashget中,網址下面的"引用"一欄中,直接填寫下載地址就可以了。

            posted on 2006-05-11 13:35 Jeff-Chen 閱讀(172) 評論(0)  編輯 收藏 引用 所屬分類: 搜集的經驗教訓/資訊
            一本一本久久A久久综合精品| 91精品日韩人妻无码久久不卡| 日韩AV毛片精品久久久| 要久久爱在线免费观看| 久久亚洲精品人成综合网| 久久这里只有精品久久| 久久精品中文字幕一区| 99国内精品久久久久久久| 狠狠色婷婷久久综合频道日韩 | 国产产无码乱码精品久久鸭 | 亚洲欧美日韩精品久久亚洲区 | 国内精品久久久久伊人av| 久久精品国产精品亜洲毛片| 久久99久久99精品免视看动漫| 久久精品国产亚洲麻豆| 人妻无码αv中文字幕久久琪琪布| 久久最近最新中文字幕大全| 99久久精品国产一区二区| 久久综合色区| 国产一区二区精品久久凹凸| 久久国产精品77777| 日本欧美久久久久免费播放网 | 久久久91人妻无码精品蜜桃HD| 91精品国产高清91久久久久久| 国产精品一区二区久久精品涩爱 | 中文字幕久久精品无码| 久久久这里有精品| 久久久受www免费人成| 国内精品久久久久久中文字幕| 亚洲欧美日韩久久精品第一区| 色偷偷91久久综合噜噜噜噜| 久久成人18免费网站| 99久久综合狠狠综合久久| 久久精品国内一区二区三区| 看久久久久久a级毛片| 午夜精品久久久久久99热| 无码人妻久久一区二区三区免费| 久久久久av无码免费网| 伊人久久大香线蕉AV色婷婷色| 久久精品青青草原伊人| 伊人久久久AV老熟妇色|