Apache網頁的優化、安全與防盜鏈圖文詳解
1. Apache 網頁的壓縮
在一個企業中,部署Apache后只采用默認的配置參數,會導致網站出現很多問題。換句話說,默認配置是針對之前的下層服務器,之前的配置已經不適合今天的互聯網時代。為了滿足企業的需求,我們需要考慮如何提高Apache的性能和穩定性,這是Apache優化的內容。
1.1檢查壓縮模塊
apachectl -t -D DUMP_MODULES | grep "deflate"1.2 安裝mod_deflate模塊。
如果沒有安裝mod_deflate模塊,重新編譯安裝Apache,添加mod_deflate模塊。systemctl stop httpd.servicecd /usr/local/httpd/confmv httpd.conf httpd.conf.bak yum -y install gcc gcc-c++ pcre pcre-devel zlib-develcd /opt/httpd-2.4.29/./configure \--prefix=/usr/local/httpd \--enable-so \--enable-rewrite \--enable-charset-lite \--enable-cgi \--enable-deflate make && make install1.3將mod_deflate模塊配置為啟用。
vim /usr/local/httpd/conf/httpd.conf在最后一行添加-
<IfModule mod_deflate.c>AddOutputFilterByType DEFLATE text/html text/plain text/css text/xml text/javascript text/jpg text/pngDeflateCompressionLevel 9SetOutputFilter DEFLATE</IfModule>1.4檢查安裝并啟動服務。
[root@www htdocs]#apachectl -tSyntax OK[root@www htdocs]#apachectl -t -D DUMP_MODULES | grep "deflate" deflate_module (shared)[root@www htdocs]#systemctl start httpd1.5測試mod_deflate壓縮是否生效。
編輯網頁:
cd /usr/local/httpd/htdocsvim index.html<html><body><h1>It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!It works!</h1><img src="game.jpg"/></body></html>測試:
方法1:
在Linux系統中,打開Firefox瀏覽器,右鍵查看元素。
選擇網絡->選擇HTML、WS、其他
訪問http://192.168.80.10,雙擊200響應消息,查看響應頭是否包含內容編碼:gzip。
方法二:
安裝微軟。NET4和fiddler軟件在Windows系統上依次運行,并打開fiddler軟件。
選擇檢查員->:選擇標題。
瀏覽http://192.168.80.10,雙擊200響應消息,查看是否有content-encoding:gzip
2. Apache的網頁緩存處理
減少網絡延遲并加快頁面打開速度——緩存比源服務器更靠近客戶端,因此從緩存請求內容比從源服務器請求內容花費的時間更少。使用緩存可以明顯加快頁面打開速度,獲得更好的體驗。
減輕服務器壓力——網絡資源到期日設置后,用戶可以重用本地緩存,減少對源服務器的請求,間接減輕服務器壓力。同時,搜索引擎的爬蟲機器人還可以根據到期機制減少抓取頻率,也可以有效減輕服務器的壓力。
減少網絡帶寬的損失-帶寬對網站運營商和用戶來說都是金錢。當使用web cache的副本時,只會產生最小的網絡流量,可以有效降低運營成本。
2.1檢查是否安裝了緩存模塊。
apachectl -t -D DUMP_MODULES | grep "expires"2.2重新編譯安裝并添加緩存模塊
systemctl stop httpd.servicecd /usr/local/httpd/confmv httpd.conf httpd.conf.bak1 yum -y install gcc gcc-c++ pcre pcre-devel zlib-develcd /opt/httpd-2.4.29/./configure \--prefix=/usr/local/httpd \--enable-so \--enable-rewrite \--enable-charset-lite \--enable-cgi \--enable-deflate \--enable-expires make && make install2.3配置緩存模塊
vim /usr/local/httpd/conf/httpd.conf第52行和第199行的監控繼續被取消注釋和修改。
在最后一行添加-
<IfModule mod_expires.c> ExpiresActive On ExpiresDefault "access plus 60 seconds" </IfModule>2.4驗證模塊的安裝并重新啟動服務。
[root@www httpd-2.4.29]#apachectl -t[root@www httpd-2.4.29]#apachectl -t -D DUMP_MODULES | grep "expires"[root@www httpd-2.4.29]#systemctl restart httpd2.5修改測試網頁,進行訪問測試。
[root@www httpd-2.4.29]#cd /usr/local/httpd/htdocsvim index.html <html><body><h1>this is a game</h1><img src="games.jpg"/></body></html>訪問測試:3.隱藏Apache的版本信息
如果我們開放了Apache服務,那么別人就可以通過F12找到你的Apache版本號,從而利用一些已知的漏洞或者零日漏洞進行攻擊,這是非常危險的。所以,為了降低哪怕一點點風險,我們最好選擇隱藏Apache的版本信息。3.1修改httpd 的主要配置
vim /usr/local/httpd/conf/httpd.conf-第491行-取消注釋vim /usr/local/httpd/conf/extra/httpd-default.conf如果頁面信息刷新不成功。您可以在訪問之前嘗試清除空歷史中的所有信息。
4.Apache 防盜鏈
互聯網時代,網站最關注的是用戶訪問量。吸引用戶的往往是新奇的標題、圖片及其內容,承載這些需求占用服務器的資源。而一些無良企業會把自己網站的圖片重定向到你的網站,閱讀你的圖片,會占用你的帶寬和服務器資源,但是流量會被它占用。所以阿帕奇防盜鏈的設置是必要的。
偷鏈的實驗演示
在這個實驗中,我準備了兩臺虛擬機。一個是編譯源代碼并安裝apche服務的主機。作為盜鏈的主機,域名設置為www.test.com
,另一個是為yum安裝apache服務的主機。作為被盜鏈的主機,域名設置為www.test1.com。(1)盜鏈主機訪問盜鏈主機,盜圖網絡路徑
(2)鏈盜主機建立自己的網站圖片資源。
(3)盜后訪問測試
注意:本測試訪問竊取鏈的主機,探究圖片來源
防盜鏈措施演示
(1)主配電配置的修改
因為原生源代碼編譯時已經下載了相關模塊,所以直接修改配置。如果未下載相關模塊,則需要下載配置。下載方法:
systemctl stop httpd.servicecd /usr/local/httpd/confmv httpd.conf httpd.conf.bak2 yum -y install gcc gcc-c++ pcre pcre-devel zlib-develcd /opt/httpd-2.4.29/./configure \--prefix=/usr/local/httpd \--enable-so \--enable-rewrite \ #加入mod_rewrite 模塊--enable-charset-lite \--enable-cgi \--enable-deflate \--enable-expires make && make install修改主配置:
vim /usr/local/httpd/conf/httpd.conf-157行-取消注釋
重寫秒%{HTTP_REFERER}!http://www.test.com/.* $[NC]
的字段含義:“%{HTTP_REFERER}” :存放一個鏈接的 URL,表示從哪個鏈接中轉訪問目錄下的靜態資源。“!^” :表示不以后面的字符串開頭。“http://www.test.com” :是本網站的路徑,按整個字符串匹配。“.*$” :表示以任意字符結尾。& ldquo【NC】& rdquo;:表示不區分大小寫。
寫入規則。* \.(gif | jpg | swf)$ http://www.test.com/error.png
字段含義:“.” :表示匹配一個字符。“*” :表示匹配 0 到多個字符,與“.”合起來的意思是匹配 0 到多次前面的任意字符,如果是 1 到多次匹配可以用“+”表示。“\.” :在這里的“\”是轉義符,“\.”就代表符號“.”的意思。因為“.”在指令中是屬于規則字符,有相應的含義, 如果需要匹配,需要在前面加個轉義符“\”,其它規則字符如果需要匹配,也做同樣處理。“(gif|jpg|swf)” :表示匹配“gif”、“jpg”、“swf”任意一個,“$”表示結束。最后的規則是以“.gif”、“.jpg”、“.swf”結尾, 前面是1到多個字符的字符串,也就是匹配圖片類型的文件。“http://www.test.com/error.png” :表示轉發到這個路徑 。(2)準備一張圖片提醒鏈賊,放在網頁根目錄下。
(3)參觀并展示
訪問盜鏈主機的網頁:訪問盜鏈主機的網頁:總結
關于Apache網頁優化、安全和防盜鏈的這篇文章到此為止。關于Apache網頁優化
安全和防盜鏈的更多信息,請搜索腳本之家之前的文章或者繼續瀏覽下面的相關文章。希望大家以后多多支持劇本之家!如果您的問題還未解決可以聯系站長付費協助。

有問題可以加入技術QQ群一起交流學習
本站vip會員 請加入無憂模板網 VIP群(50604020) PS:加入時備注用戶名或昵稱
普通注冊會員或訪客 請加入無憂模板網 技術交流群(50604130)
客服微信號:15898888535
聲明:本站所有文章資源內容,如無特殊說明或標注,均為采集網絡資源。如若內容侵犯了原著者的合法權益,可聯系站長刪除。