Apache網(wǎng)頁優(yōu)化---配置防盜鏈

防盜鏈概述

防盜鏈就是防止別人的網(wǎng)站代碼里面盜用服務(wù)器的圖片文件、視頻等相關(guān)資源.如果別人盜用網(wǎng)站的這些靜態(tài)資源,明顯的是會(huì)增大服務(wù)器的帶寬壓力.所以作為網(wǎng)站的維護(hù)人員,要杜絕我們服務(wù)器的靜態(tài)資源被其他網(wǎng)站盜用.

配置規(guī)則變量說明

%{HTTP_ REFERER}:瀏覽header中的鏈接字段,存放一一個(gè)鏈
接的URL,代表是從哪個(gè)鏈接訪問所需的網(wǎng)頁
!^:不以后面的字符串開頭
.*$: 以任意字符結(jié)尾
NC:不區(qū)分大寫
R:強(qiáng)制跳轉(zhuǎn)

專業(yè)成都網(wǎng)站建設(shè)公司,做排名好的好網(wǎng)站,排在同行前面,為您帶來客戶和效益!創(chuàng)新互聯(lián)公司為您提供成都網(wǎng)站建設(shè),五站合一網(wǎng)站設(shè)計(jì)制作,服務(wù)好的網(wǎng)站設(shè)計(jì)公司,成都做網(wǎng)站、成都網(wǎng)站制作負(fù)責(zé)任的成都網(wǎng)站制作公司!


規(guī)則匹配說明

RewriteEngine On:打開網(wǎng)頁重寫功能
RewriteCond:設(shè)置匹配規(guī)則(條件)
RewriteRule:設(shè)置跳轉(zhuǎn)動(dòng)作(操作)


規(guī)則匹配

如果相應(yīng)變量的值匹配所設(shè)置的規(guī)則,則逐條往下處理;如果不匹配,則往后的規(guī)則不再匹配


實(shí)例演示

環(huán)境部署

一臺(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)

演示開始

第一步:安裝并配置DNS服務(wù)

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.開啟DNS服務(wù)

[root@localhost named]# systemctl start named
[root@localhost named]# systemctl stop firewalld.service 
[root@localhost named]# setenforce 0

第二步:編譯安裝Apache服務(wù)

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.安裝編譯語言環(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
//安裝語言環(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.開啟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)聽地址替換為本地Linux的IP地址
 52 #Listen 80
 //在第52行前加上#來注釋掉IPv6的監(jiān)聽

156 LoadModule rewrite_module modules/mod_rewrite.so
//刪除文件的第156行前的#號(hào)注釋,開啟重寫功能模塊

6.創(chuàng)建首頁頁并放入圖片

[root@localhost httpd-2.4.29]# cd /usr/local/httpd/bin/
//切換至Apache服務(wù)的/bin目錄中
[root@localhost bin]# vim /usr/local/httpd/htdocs/index.html            
//編輯首頁文件

<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.開啟Apache服務(wù)

[root@localhost bin]# ./apachectl start         
//使用Apache自帶的腳本開啟服務(wù)

第三步:使用測(cè)試客戶機(jī)查看網(wǎng)站

1.打開一臺(tái)Win 7 x64測(cè)試主機(jī),變更DNS服務(wù)器地址為本地Linux的IP地址

Apache網(wǎng)頁優(yōu)化 ---配置防盜鏈

2.打開瀏覽器輸入域名www.bdqn.com即可訪問網(wǎng)頁
Apache網(wǎng)頁優(yōu)化 ---配置防盜鏈
3.查看網(wǎng)頁屬性,以獲取圖片的URL地址
右擊圖片,點(diǎn)擊屬性即可查看到該圖片的URL地址為http://www.bdqn.com/game.jpg
Apache網(wǎng)頁優(yōu)化 ---配置防盜鏈


第四步:創(chuàng)建并配置盜鏈網(wǎng)站

1.開啟一臺(tái)Win 7-2主機(jī),搭建網(wǎng)站
控制面板—程序—程序和功能—打開和關(guān)閉windows功能—選擇Internet信息服務(wù)
Apache網(wǎng)頁優(yōu)化 ---配置防盜鏈
2.使用txt文檔編寫網(wǎng)頁內(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)中
Apache網(wǎng)頁優(yōu)化 ---配置防盜鏈


第五步:使用測(cè)試客戶機(jī)查看盜鏈網(wǎng)站

使用Win 7 x64測(cè)試主機(jī)訪問Win 7-2(IP:192.168.235.143),就可以訪問到網(wǎng)頁,但是這是個(gè)盜鏈網(wǎng)站,訪問此站點(diǎn)的同時(shí)既盜取了他人源網(wǎng)站的資源,有獎(jiǎng)流量導(dǎo)回了源網(wǎng)站,從而造成了他人服務(wù)器的負(fù)載
Apache網(wǎng)頁優(yōu)化 ---配置防盜鏈


第六步:配置防盜鏈

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.重新開啟服務(wù)

[root@localhost bin]# ./apachectl stop
[root@localhost bin]# ./apachectl start

第七步:測(cè)試防盜鏈

使用Win 7 x64測(cè)試主機(jī)再次訪問Win 7-2(IP:192.168.235.143)的網(wǎng)頁,便會(huì)跳出另外一張圖片,防盜鏈配置成功!Apache網(wǎng)頁優(yōu)化 ---配置防盜鏈

--------------------------------------------感謝閱讀 --------------------------------------------

網(wǎng)頁名稱:Apache網(wǎng)頁優(yōu)化---配置防盜鏈
標(biāo)題來源:http://bm7419.com/article0/jdgdoo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供虛擬主機(jī)用戶體驗(yàn)、外貿(mào)網(wǎng)站建設(shè)、營銷型網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)公司、定制網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都做網(wǎng)站