1. 程式人生 > 其它 >Apache網頁優化

Apache網頁優化

一、Apache網頁優化

1、概述
在企業中,部署Apache後只採用預設的配置引數,會引發網站很多問題,換言之預設配置是針對以前較低的伺服器配置的,以前的配置已經不適用當今網際網路時代
為了適應企業需求,就需要考慮如何提升Apache的效能與穩定性,這就是Apache優化的內容
2、優化內容
配置網頁壓縮功能
配置網頁快取
工作模式的選擇與引數優化
配置隱藏版本號
配置防盜鏈
……

二、gizp介紹

1、概述
配置Apache的網頁壓縮功能,是使用gzip壓縮演算法來對網頁內容進行壓縮後再傳輸到客戶端瀏覽器
2、作用
降低了網路傳輸的位元組數,加快網頁載入的速度
節省流量,改善使用者的瀏覽體驗

gzip與搜尋引擎的抓取工具有著更好的關係

三、Apache的壓縮模組2-1

1、Apache實現網頁壓縮的功能模組包括
mod_ gzip 模組
mod_deflate模組
2、Apache 1.x
沒有內建網頁壓縮技術,但可使用第三方mod_gzip 模組執行壓縮
3、Apache 2.x
在開發的時候,內建了mod_deflate這個模組,取代mod_gzip

四、Apache的壓縮模組2-2

mod_gzip模組與mod_deflate 模組
兩者均使用gzip壓縮演算法,運作原理類似
mod_deflate壓縮速度略快,而mod_gzip的壓縮比略高
mod_gzip對伺服器CPU的佔用要高一些

高流量的伺服器,使用mod_deflate可能會比mod_gzip載入速度更快

五、設定網頁壓縮

1.檢查是否安裝mod_deflate模組
apachectl -t -D DUMP_MODULES | grep "deflate"

在這裡插入圖片描述

2.如果沒有安裝mod_deflate模組,重新編譯安裝Apache新增mod_deflate模組
systemctl stop httpd.service
cd /usr/local/httpd/conf
mv httpd.conf httpd.conf.bak
yum -y install gcc gcc-c++ pcre pcre-devel zlib-devel
cd /opt/httpd-2.4.29/
./configure \
--prefix=/usr/local/httpd \
--enable-deflate \
--enable-so \
--enable-rewrite \
--enable-charset-lite \
--enable-cgi \
--enable-deflate——————————加入mod_deflate模組
make && make install

3.配置mod_deflate模組啟用
vim /usr/local/httpd/conf/httpd.conf
##52行修改
Listen 192.168.241.3:80
##105行取消註釋
LoadModule deflate_module modules/mod_deflate.so——————開啟mod_deflate模組
##197行取消註釋,修改
ServerName www.kgc.com:80
##末行新增##
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html text/plain text/css text/xml text/javascript text/jpg text/png——————代表對什麼樣的內容啟用gzip壓縮
DeflateCompressionLevel 9
SetOutputFilter DEFLATE
</IfModule>

4、檢查安裝情況,啟動服務
apachectl -t————————驗證配置檔案的配置是否正確
apachectl -t -D DUMP_MODULES | grep "deflate"————————檢查mod_ deflate模組是否已安裝
deflate_module (shared)————————已安裝的正確結果
systemctl start httpd.service

5.測試mod_deflate壓縮是否生效
cd /usr/local/httpd/htdocs
先將kb.jpg檔案傳到/usr/local/httpd/htdocs目錄下
vim index.html
<html><body><h1>manba out!manba out!manba out!manba out!manba out!manba out!manba out!manba out!manba out!manba out!manba out!manba out!manba out!manba out!manba out!manba out!manba out!manba out!manba out!manba out!manba out!manba out!manba out!manba out!manba out!manba out!manba out!</h1>
<img src="kb.jpg"/>
</body></html>
方法一:
在Linux系統中,開啟火狐瀏覽器,右擊點檢視元素
選擇網路---> 選擇HTML、WS、其他
訪問http://192.168.241.3 ,雙擊200響應訊息檢視響應頭中包含Content-Encoding: gzip
方法二:
在Windows系統中依次安裝Microsoft.NET4和fiddler軟體,開啟fiddler軟體,win10系統不需要安裝Microsoft.NET4,則其他系統需要安裝
選擇inspectors ---> 選擇Headers
瀏覽器訪問http://192.168.241.3 ,雙擊200響應訊息檢視Content-Encoding: gzip

六、配置網頁的快取時間

1、通過mod_expire模組配置Apache,使網頁能在客戶端瀏覽器快取一段時間,以避免重複請求
2、啟用mod_expire模組後,會自動生成頁面頭部資訊中的Expires標籤和Cache-Control標籤,客戶端瀏覽器根據標籤決定下次訪問是在本地機器的快取中獲取頁面,不需要向伺服器再次發出請求,從而降低客戶端的訪問頻率和次數,達到減少不必要的流量和增加訪問速度的目的