您好,登錄后才能下訂單哦!
防盜鏈就是防止別人的網(wǎng)站代碼里面盜用服務(wù)器的圖片文件、視頻等相關(guān)資源.如果別人盜用網(wǎng)站的這些靜態(tài)資源,明顯的是會(huì)增大服務(wù)器的帶寬壓力.所以作為網(wǎng)站的維護(hù)人員,要杜絕我們服務(wù)器的靜態(tài)資源被其他網(wǎng)站盜用.
%{HTTP_ REFERER}:瀏覽header中的鏈接字段,存放一一個(gè)鏈
接的URL,代表是從哪個(gè)鏈接訪問(wèn)所需的網(wǎng)頁(yè)
!^:不以后面的字符串開(kāi)頭
.*$: 以任意字符結(jié)尾
NC:不區(qū)分大寫(xiě)
R:強(qiáng)制跳轉(zhuǎn)
RewriteEngine On:打開(kāi)網(wǎng)頁(yè)重寫(xiě)功能
RewriteCond:設(shè)置匹配規(guī)則(條件)
RewriteRule:設(shè)置跳轉(zhuǎn)動(dòng)作(操作)
如果相應(yīng)變量的值匹配所設(shè)置的規(guī)則,則逐條往下處理;如果不匹配,則往后的規(guī)則不再匹配
一臺(tái)linux虛擬機(jī)作為源網(wǎng)站服務(wù)器,(IP:192.168.235.158/域名:www.bdqn.com)
一臺(tái)win7 x64虛擬機(jī)作為測(cè)試客戶機(jī)
一臺(tái)win7 -2虛擬機(jī)作為盜鏈網(wǎng)站服務(wù)器(192.168.235.143)
1.安裝服務(wù)
[root@localhost ~]# yum install bind -y
2.配置DNS主配置文件
[root@localhost ~]# vim /etc/named.conf //編輯主配置文件
options {
listen-on port 53 { any; }; //將括號(hào)內(nèi)127.0.0.1替換為any
... //省略部分不做修改
allow-query { any; }; //將括號(hào)內(nèi)localhost替換為any
3. 配置DNS區(qū)域配置文件
[root@localhost ~]# vim /etc/named.rfc1912.zones //編輯區(qū)域配置文件
zone "bdqn.com" IN { //指定域名
type master;
file "bdqn.com.zone"; //指定域名的區(qū)域數(shù)據(jù)文件
allow-update { none; };
};
4.配置DNS區(qū)域數(shù)據(jù)配置文件
[root@localhost ~]# cd /var/named/ //切換目錄
[root@localhost named]# cp -p named.localhost bdqn.com.zone //保留權(quán)限復(fù)制區(qū)域數(shù)據(jù)文件模板
[root@localhost named]# vim bdqn.com.zone //編輯區(qū)域數(shù)據(jù)文件
$TTL 1D
@ IN SOA @ rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS @
A 127.0.0.1
www IN A 192.168.235.158
//刪除末行的內(nèi)容,輸入www IN A 192.168.235.158 此段內(nèi)容,地址為本地Linux的IP地址
5.開(kāi)啟DNS服務(wù)
[root@localhost named]# systemctl start named
[root@localhost named]# systemctl stop firewalld.service
[root@localhost named]# setenforce 0
1.遠(yuǎn)程共享獲取LAMP工具包
[root@localhost named]# smbclient -L //192.168.56.1 //查看由Windows共享的內(nèi)容
Sharename Type Comment
--------- ---- -------
LAMP Disk
[root@localhost named]# mkdir /abc //創(chuàng)建目錄
[root@localhost named]# mount.cifs //192.168.56.1/LAMP /abc
//遠(yuǎn)程掛載工具包到創(chuàng)建的目錄
[root@localhost named]# cd /abc //切換至目錄查看
[root@localhost abc]# ls
apr-1.6.2.tar.gz game.jpg
apr-util-1.6.0.tar.gz httpd-2.4.29.tar.bz2
awstats-7.6.tar.gz install_lamp.sh
cronolog-1.6.2-14.el7.x86_64.rpm mysql-5.6.26.tar.gz
Discuz_X2.5_SC_UTF8.zip php-5.6.11.tar.bz2
error.png
2.解壓工具包的源碼文件,并
//解壓源碼文件
[root@localhost abc]# tar jxvf httpd-2.4.29.tar.bz2 -C /opt/
...
[root@localhost abc]# tar zxvf apr-1.6.2.tar.gz -C /opt/
...
[root@localhost abc]# tar zxvf apr-util-1.6.0.tar.gz -C /opt/
...
//查看/opt目錄下解壓后的組件包
[root@localhost abc]# ls /opt
apr-1.6.2 apr-util-1.6.0 httpd-2.4.29 rh
//移動(dòng)組件包到Apache服務(wù)的srclib目錄中
[root@localhost abc]# cd /opt
[root@localhost opt]# mv apr-1.6.2/ httpd-2.4.29/srclib/apr
[root@localhost opt]# mv apr-util-1.6.0/ httpd-2.4.29/srclib/apr-util
3.安裝編譯語(yǔ)言環(huán)境,并configure配置Apache功能模塊
[root@localhost opt]# cd httpd-2.4.29/
[root@localhost httpd-2.4.29]# yum install gcc gcc-c++ pcre pcre-devel zlib-devel expat-devel -y
//安裝語(yǔ)言環(huán)境
[root@localhost httpd-2.4.29]# ./configure \
> --prefix=/usr/local/httpd \
> --enable-deflate \
> --enable-so \
> --enable-rewrite \
> --enable-charset-lite \
> --enable-cgi
//配置相關(guān)功能模塊
4.編譯及編譯安裝
[root@localhost httpd-2.4.29]# make
//編譯
...
[root@localhost httpd-2.4.29]# make install
//編譯安裝
...
5.開(kāi)啟Apache主配置文件中的相關(guān)模塊
[root@localhost httpd-2.4.29]# vim /usr/local/httpd/conf/httpd.conf
//編輯Apache主配置文件
198 ServerName www.bdqn.com:80
//刪除文件的第198行前的#號(hào)注釋,并將網(wǎng)址替換成之前創(chuàng)建的域名www.bdqn.com
51 Listen 192.168.235.158:80
//刪除文件的第51行前的#號(hào)注釋,并將監(jiān)聽(tīng)地址替換為本地Linux的IP地址
52 #Listen 80
//在第52行前加上#來(lái)注釋掉IPv6的監(jiān)聽(tīng)
156 LoadModule rewrite_module modules/mod_rewrite.so
//刪除文件的第156行前的#號(hào)注釋,開(kāi)啟重寫(xiě)功能模塊
6.創(chuàng)建首頁(yè)頁(yè)并放入圖片
[root@localhost httpd-2.4.29]# cd /usr/local/httpd/bin/
//切換至Apache服務(wù)的/bin目錄中
[root@localhost bin]# vim /usr/local/httpd/htdocs/index.html
//編輯首頁(yè)文件
<html><body><h2>It works!</h2>
<img src="game.jpg"/> //將圖片放入標(biāo)簽中
</body></html>
[root@localhost bin]# cp /abc/game.jpg /usr/local/httpd/htdocs/
//將先前掛載目錄中的圖片復(fù)制到站點(diǎn)目錄下
7.開(kāi)啟Apache服務(wù)
[root@localhost bin]# ./apachectl start
//使用Apache自帶的腳本開(kāi)啟服務(wù)
1.打開(kāi)一臺(tái)Win 7 x64測(cè)試主機(jī),變更DNS服務(wù)器地址為本地Linux的IP地址
2.打開(kāi)瀏覽器輸入域名www.bdqn.com即可訪問(wèn)網(wǎng)頁(yè)
3.查看網(wǎng)頁(yè)屬性,以獲取圖片的URL地址
右擊圖片,點(diǎn)擊屬性即可查看到該圖片的URL地址為http://www.bdqn.com/game.jpg
1.開(kāi)啟一臺(tái)Win 7-2主機(jī),搭建網(wǎng)站
控制面板—程序—程序和功能—打開(kāi)和關(guān)閉windows功能—選擇Internet信息服務(wù)
2.使用txt文檔編寫(xiě)網(wǎng)頁(yè)內(nèi)容,并更改文檔名為index.html
txt文檔內(nèi)容:
<html>
<head></head>
<body>
<h2>this is test web</h2>
<img src="http://www.bdqn.com/game.jpg"/>
</body>
</html>
3.將index.html文件放入C:\inetpub\wwwroot的站點(diǎn)中
使用Win 7 x64測(cè)試主機(jī)訪問(wèn)Win 7-2(IP:192.168.235.143),就可以訪問(wèn)到網(wǎng)頁(yè),但是這是個(gè)盜鏈網(wǎng)站,訪問(wèn)此站點(diǎn)的同時(shí)既盜取了他人源網(wǎng)站的資源,有獎(jiǎng)流量導(dǎo)回了源網(wǎng)站,從而造成了他人服務(wù)器的負(fù)載
1.修改Apache的配置文件
[root@localhost bin]# vim /usr/local/httpd/conf/httpd.conf
248 Require all granted
//在第248行下追加以下6行內(nèi)容,用以防止其他網(wǎng)站盜鏈.一旦截取到盜鏈圖片信息,便會(huì)跳出錯(cuò)誤圖片
249 RewriteEngine On
250 RewriteCond %{HTTP_REFERER} !^http://bdqn.com/.*$ [NC]
251 RewriteCond %{HTTP_REFERER} !^http://bdqn.com$ [NC]
252 RewriteCond %{HTTP_REFERER} !^http://www.bdqn.com/.*$ [NC]
253 RewriteCond %{HTTP_REFERER} !^http://www.bdqn.com/$ [NC]
254 RewriteRule .*\.(gif|jpg|swf)$ http://www.bdqn.com/error.png
2.將報(bào)錯(cuò)圖片放入站點(diǎn)目錄
[root@localhost bin]# cp /abc/error.png /usr/local/httpd/htdocs/
[root@localhost bin]# ls /usr/local/httpd/htdocs/
error.png game.jpg index.html
3.重新開(kāi)啟服務(wù)
[root@localhost bin]# ./apachectl stop
[root@localhost bin]# ./apachectl start
使用Win 7 x64測(cè)試主機(jī)再次訪問(wèn)Win 7-2(IP:192.168.235.143)的網(wǎng)頁(yè),便會(huì)跳出另外一張圖片,防盜鏈配置成功!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。