apache網頁優化
一、gzip介紹
1.1、配置Apache的網頁壓縮功能,是使用gzip壓縮演算法來對網頁內容進行壓縮後再傳輸到客戶端瀏覽器
1.2、作用
1.2.1、降低了網路傳輸的位元組數:加快網頁載入的速度
1.2.2、節省流量,改善使用者的瀏覽體驗
1.2.3、gzip與搜尋引擎的抓取工具有著更好的關係
二、Apache的壓縮模組
2.1、Apache實現網頁壓縮的功能模組包括:mod_gzip模組和mod_deflate模組
2.2、Apache 1.X:沒有內建網頁壓縮技術,但可使用第三方mod_gzip模組執行壓縮
2.3、Apache 2.X:在開發的時候,內建了mod_deflate這個模組,取代mod_gzip
2.4、mod_gzip模組與mod_deflate模組
2.4.1、兩者均使用gzip壓縮演算法,運作原理類似
2.4.2、mod_deflate壓縮速度略快,而mod_gzip的壓縮比略高
2.4.3、mod_gzip對伺服器CPU的佔用要高一些
2.4.4、高流量的伺服器,使用mod_deflate可能會比mod_gzip載入速度更快
Top
三、配置網頁壓縮功能
3.1、啟用網頁壓縮功能的步驟
3.1.1、檢視是否安裝mod_deflate模組
3.1.2、修改配置檔案啟用壓縮功能
3.1.3、訪問測試
3.2、配置網頁壓縮
3.2.1、將軟體上傳到/opt 目錄下,關閉防火牆和核心防護
1 systemctl stop firewalld
2 seteforce 0
3.2.2、解壓縮檔案
1 [root@localhost ~]# cd /opt
2 [root@localhost opt]# tar xf apr-1.6.2.tar.gz
3 [root@localhost opt]# tar xf apr-util-1.6.0.tar.gz
4 [root@localhost opt]# tar xf httpd-2.4.29.tar.bz2 ###yum -y install bzip2
5 [root@localhost opt]# mv apr-1.6.2 httpd-2.4.29/srclib/apr
6 [root@localhost opt]# mv apr-util-1.6.0 httpd-2.4.29/srclib/apr-util
3.2.3、安裝環境
1 yum -y install
2 gcc
3 gcc-c++
4 make
5 pcre-devel
6 expat-devel
7 perl
3.2.4、編譯安裝
1 [root@localhost opt]# cd /opt/httpd-2.4.29/
2 ./configure
3 --prefix=/usr/local/httpd
4 --enable-so
5 --enable-rewrite
6 --enable-charset-lite
7 --enable-cgi
8 make && make install
3.2.5、配置檔案編輯
1 cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd
2 vi /etc/init.d/httpd
3 #!/bin/bash
4 # chkconfig: 25 99 20
5 # description: Apache Server
3.2.6、優化路徑並修改主配置檔案
1 ln -s /usr/local/httpd/conf/httpd.conf /etc
2 ln -s /usr/local/httpd/bin/* /usr/local/bin
3 vi /etc/httpd.conf
4 ServerName www.xuhao.com:80 ###去掉#號
3.2.7、開啟服務並開啟壓縮模組
1 httpd -t
2 apachectl -t
3 systemctl start httpd
4 netstat -anpt | grep httpd
5 vi /etc/httpd.conf
6 LoadModule deflate_module_modules/mod_deflate.so #去掉#號
1 systemctl restart httpd
2 apachectl -D DUMP_MODULES | grep deflate
3 vi /etc/httpd.conf
4 在末尾新增
5 AddOutputFilterByType DEFLATE text/plain text/css text/xml text/javascript image/png image/jpg image/jpeg application/x-httpd-php application/x-javascript
6 DeflateCompressionlevel 9
7 SetOutputFilter DEFLATE
3.2.8、重啟服務並設定測試頁
1 systemctl restart httpd
2 vi /usr/local/httpd/htdocs/index.html
3
this is a text page!!
<img src=a.jpg / >將圖片拖入apache預設網頁資料夾內
3.2.9、客戶端測試並用Fiddler軟體檢視壓縮狀態
四、配置網頁的快取時間
4.1、通過mod_expire模組配置Apache,使用能在客戶端瀏覽器快取一段時間,以避免重複請求
4.2、啟用mod_expire模組後,會自動生成頁面頭部資訊中的Expire標籤和Cache-Control標籤,從而降低客戶端的訪問頻率和次數,達到減少不必要的流量和增加訪問速度的目的
4.3、啟用網頁快取功能步驟
4.3.1、檢視是否安裝mod_expire模組
4.3.2、修改配置檔案,啟用快取功能
4.3.3、訪問測試
4.4、配置網頁快取時間
4.4.1、開啟expire模組
1 vi /etc/httpd.conf
2 LoadModule expires_module_modules/mod_expires.so #去掉#號
4.4.2、在主配置檔案末尾新增
1 vi /etc/httpd.conf
2
3 ExpiresActive On
4 ExpiresDefault “access plus 60 seconds”
5
6 末尾新增
1 httpd -t
2 apachectl -t
3 systemctl restart httpd
4 apachectl -D DUMP_MODULES | grep expires
4.4.3、客戶端測試並用Fiddler軟體檢視快取時間
五、配置Apache隱藏版本資訊
5.1、Apache的版本資訊,透露了一定的漏洞資訊從而給網站帶來安全隱患
5.2、配置隱藏版本
1 vi /etc/httpd.conf
2 Include conf/extra/httpd-default.conf #去掉#號
1 vi /usr/local/httpd/conf/extra/httpd-default.conf
2 ServerTokens Prod #修改
3 Serversignature Off #新增
重啟服務,並用客戶端登入,利用Fiddler軟體檢視(修改前後對比)
1 systemctl restart httpd
六、配置Apache實現防盜鏈
6.1、防盜鏈是防止別人的網站程式碼裡面盜用我們自己伺服器上的圖片,檔案,視訊等相關資源
6.2、如果別人盜用網站的這些靜態資源,明顯的是會增大伺服器的頻寬壓力
6.3、作為網站的維護人員,要杜絕伺服器的靜態資源被其他網站利用
6.5、盜鏈模擬步驟
6.5.1、兩臺主機配置測試頁面
6.5.2、盜鏈網站的測試網頁,盜用源主機網站目錄下的一個a.jpg檔案
6.5.3、在Windows中訪問驗證
6.6、配置防盜鏈
6.6.1、再開一臺虛擬機器(IP:20.0.0.30),安裝httpd服務,關閉防火牆和核心防護
1 yum -y install httpd
2 systemctl stop firewalld
3 seteforce 0
6.6.2、編輯預設網頁檔案指向20.0.0.10的圖片檔案
1 vi /var/www/html/index.html
2
server 2
<img src=http://20.0.0.10/a.jpg / >6.6.3、客戶端測試訪問20.0.0.30發現圖片是20.0.0.10伺服器上的
6.6.4、此時我們在源主機(IP:20.0.0.10)上配置防盜鏈配置
1 vi /etc/httpd.conf
2 LoadModule rewrite_module modules/mod_rewrite.so #去掉#號
6.6.5、源主機(IP:20.0.0.10)重啟服務,將error.png圖片上傳到預設網頁目錄裡
1 vi /etc/httpd.conf
2 <Directory “/usr/local/httpd/htdocs”>
3 …省略內容
4 RewriteEngine On
5 RewriteCond %{HTTP_REFERER} !^http://192.168.73.40/.$ [NC]
6 RewriteCond %{HTTP_REFERER} !^http://192.168.73.40$ [NC]
7 RewriteCond %{HTTP_REFERER} !^http://192.168.73.40/
8 RewriteRule .*.(gif|jpg|swf)$ http://192.168.73.40/error.png [R,NC]
9
1 systemctl restart httpd
6.6.6、客戶端測試20.0.0.10及20.0.0.30
20.0.0.10的測試結果如下:
20.0.0.30的測試結果如下:
6.7、配置規則變數說明
相關文章
- Apache網頁優化與安全優化Apache網頁優化
- Apache網頁與安全優化Apache網頁優化
- Apache網頁優化__GongWei1997Apache網頁優化Go
- 網頁效能優化網頁優化
- 如何優化網頁轉化率?優化網頁
- 如何優化網頁轉化率?(上篇)優化網頁
- 如何優化網頁轉化率?(中篇)優化網頁
- 如何優化網頁轉化率?(下篇)優化網頁
- Nginx網頁優化與防盜鏈Nginx網頁優化
- 丰采網教你如何優化落地頁MXT優化
- Vue 網站首頁載入優化Vue網站優化
- SQL優化:limit分頁優化SQL優化MIT
- 網頁主動探測工具-NIO優化網頁優化
- 移動端網頁效能優化自查表網頁優化
- 十六.Apache的管理及優化Apache優化
- Apache HBase MTTR 優化實踐Apache優化
- 效能優化小冊 - 提高網頁響應速度:優化你的 CDN 效能優化網頁
- apache-淺析apache優化的幾點建議Apache優化
- 前端網頁載入速度緩慢優化策略前端網頁優化
- Google推出網頁加速優化擴充套件:PageSpeedGo網頁優化套件
- 如何優化單頁面網站搜尋引擎?優化網站
- Apache效能優化的25個技巧Apache優化
- 淺談網頁基本效能優化規則小結網頁優化
- 前端黑科技:美團網頁首幀優化實踐前端網頁優化
- 分頁查詢優化優化
- 頁面快取優化快取優化
- iOS 頁面效能優化iOS優化
- 頁面優化建議優化
- Apache Kylin 入門 6 - 優化 CubeApache優化
- 雅虎十四條:網站前端網頁優化的14條原則網站前端網頁優化
- 移動網站效能優化:網頁載入技術概覽網站優化網頁
- seo優化中不容忽視的頁面優化優化
- 網站訪問優化(二):開啟apache伺服器gzip壓縮網站優化Apache伺服器
- 網頁效能優化之非同步載入js檔案網頁優化非同步JS
- 還在為網頁渲染效能優化而苦惱嗎?網頁優化
- 網頁設計中優化圖片的 6 個技巧網頁優化
- 搜尋優化之友好的網頁設計製作優化網頁
- 網頁圖片優化的實用工具和技巧分享網頁優化