ค้นหาเว็บไซต์

ติดตั้ง Mod_Pagespeed เพื่อเร่งความเร็ว Apache และ Nginx สูงสุด 10x


นี่คือซีรีส์ที่กำลังดำเนินอยู่ของเราเกี่ยวกับการเพิ่มประสิทธิภาพ Apache และการปรับแต่งประสิทธิภาพ ที่นี่เราจะแนะนำผลิตภัณฑ์ใหม่ของ Google ที่เรียกว่าโมดูล mod_pagespeed สำหรับ Apache หรือ Nginx ที่ทำให้เว็บไซต์โหลดเร็วกว่าที่เคย

ฉันได้ทดสอบโมดูลนี้เป็นการส่วนตัวบนเซิร์ฟเวอร์ Live (linux-console.net) ของเรา และผลลัพธ์ก็น่าทึ่ง ตอนนี้ไซต์โหลดได้เร็วกว่าเมื่อก่อนมาก ฉันขอแนะนำให้คุณทุกคนติดตั้งและดูผลลัพธ์

อย่าพลาด: 5 เคล็ดลับในการเพิ่มประสิทธิภาพของเว็บเซิร์ฟเวอร์ Apache ของคุณ

ในบทความนี้ เราจะแสดงวิธีการติดตั้งและกำหนดค่าโมดูล mod_pagespeed ของ Google สำหรับเว็บ Apache และ Nginx เซิร์ฟเวอร์ใน RHEL/CentOS/ ระบบ Fedora และ Debian/Ubuntu ที่ใช้แพ็คเกจไบนารีอย่างเป็นทางการ ดังนั้น ระบบจะได้รับการอัพเดตเป็นประจำโดยอัตโนมัติและอัพเดทอยู่เสมอ

Mod_PageSpeed คืออะไร

mod_pagespeed เป็นโมดูลโอเพ่นซอร์สสำหรับเว็บเซิร์ฟเวอร์ Apache และ Nginx ที่เพิ่มประสิทธิภาพ หน้าเว็บ โดยอัตโนมัติเพื่อปรับปรุงประสิทธิภาพที่ดีขึ้นในขณะที่ ให้บริการหน้าเว็บโดยใช้ เซิร์ฟเวอร์ HTTP

มีตัวกรองหลายตัวที่จะปรับไฟล์ให้เหมาะสมโดยอัตโนมัติ เช่น HTML, CSS, JavaScript, JPEG, PNG< และทรัพยากรอื่นๆ

mod_pagespeed ได้รับการพัฒนาบน PageSpeed Optimization Libraries ซึ่งมีการใช้งานมากกว่า 100,000 เว็บไซต์ และให้บริการโดยผู้ให้บริการ CDN และโฮสติ้งยอดนิยม เช่น GoDaddy, EdgeCast, DreamHost และอื่นๆ อีกมากมาย

มีตัวกรองการเพิ่มประสิทธิภาพมากกว่า 40+ รายการ ซึ่งรวมถึง:

  1. การเพิ่มประสิทธิภาพ การบีบอัด และการปรับขนาดภาพ
  2. การต่อข้อมูล CSS และ JavaScript การลดขนาด และการอินไลน์
  3. ส่วนขยายแคช การแบ่งส่วนโดเมน และการเขียนใหม่
  4. เลื่อนการโหลดทรัพยากร JS และรูปภาพออกไป
  5. และอื่น ๆ อีกมากมาย…

โมดูล mod_pagespeed ที่รองรับแพลตฟอร์ม Linux ในปัจจุบันคือ RHEL/CentOS/ Fedora และ Debian/Ubuntu< สำหรับการแจกแจง 32 บิตและ 64 บิต

การติดตั้งโมดูล Mod_Pagespeed ใน Linux

ดังที่ฉันได้กล่าวไว้ข้างต้นว่าเรากำลังใช้แพ็คเกจไบนารีอย่างเป็นทางการของ Google เพื่อติดตั้งสำหรับการอัปเดตในอนาคต ดังนั้นมาติดตั้งในระบบของคุณตามสถาปัตยกรรมระบบปฏิบัติการของคุณกันดีกว่า

บน RHEL/CentOS และ Fedora

----------- On 32-bit Systems -----------------
wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_i386.rpm
yum install at   [# if you don't already have 'at' installed]
rpm -Uvh mod-pagespeed-stable_current_i386.rpm

----------- On 64-bit Systems -----------------
wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_x86_64.rpm
yum install at   [# if you don't already have 'at' installed]
rpm -Uvh mod-pagespeed-stable_current_x86_64.rpm

บน Debian และ Ubuntu

----------- On 32-bit Systems -----------------
wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_i386.deb
sudo dpkg -i mod-pagespeed-stable_current_i386.deb
sudo apt-get -f install

----------- On 64-bit Systems -----------------
wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_amd64.deb
sudo dpkg -i mod-pagespeed-stable_current_amd64.deb
sudo apt-get -f install

การติดตั้ง mod_pagespeed จากแพ็คเกจไบนารีจะเพิ่มพื้นที่เก็บข้อมูลอย่างเป็นทางการของ Google ให้กับระบบของคุณ เพื่อให้คุณสามารถอัปเดต mod_pagespeed ได้โดยอัตโนมัติโดยใช้ตัวจัดการแพ็คเกจที่เรียกว่า yum หรือ apt

มีการติดตั้ง Mode_Pagespeed ใด

มาดูกันว่าแพ็คเกจ mod_pagespeed ใดที่ติดตั้งบนระบบ:

  1. โดยจะติดตั้งสองโมดูล mod_pagespeed.so สำหรับ Apache 2.2 และ mod_pagespeed_ap24.so สำหรับ Apache 2.4
  2. โดยจะติดตั้งไฟล์การกำหนดค่าหลัก 2 ไฟล์ ได้แก่ pagespeed.conf และ pagespeed_libraries.conf (สำหรับ Debian pagespeed.load) หากคุณเปลี่ยนไฟล์การกำหนดค่าเหล่านี้ คุณจะไม่ได้รับการอัพเดตโดยอัตโนมัติอีกต่อไป
  3. ตัวย่อ JavaScript แบบสแตนด์อโลน pagespeed_js_minify ที่ใช้ในการย่อขนาด JS และสร้างข้อมูลเมตาสำหรับการกำหนดรูปแบบมาตรฐานของไลบรารี

เกี่ยวกับการกำหนดค่าและไดเรกทอรี Mod_Pagespeed

โมดูลจะเปิดใช้งานไฟล์การกำหนดค่าและไดเร็กทอรีต่อไปนี้โดยอัตโนมัติระหว่างการติดตั้ง

  1. /etc/cron.daily/mod-pagespeed : สคริปต์ cron mod_pagespeed สำหรับตรวจสอบและติดตั้งการอัปเดตล่าสุด
  2. /etc/httpd/conf.d/pagespeed.conf : ไฟล์การกำหนดค่าหลักสำหรับ Apache ในการแจกแจงตาม RPM
  3. /etc/apache2/mods-enabled/pagespeed.conf : ไฟล์การกำหนดค่าหลักสำหรับ Apache2 ในการแจกแจงแบบ DEB
  4. pagespeed_libraries.conf : ชุดไลบรารีเริ่มต้นสำหรับ Apache จะโหลดเมื่อเริ่มต้น Apache
  5. /usr/lib{lib64}/httpd/modules/mod_pagespeed.so : โมดูล mod_pagespeed สำหรับ Apache
  6. /var/cache/mod_pagespeed : ไดเรกทอรีแคชไฟล์สำหรับเว็บไซต์

ข้อสำคัญ: ใน Nginx ไฟล์การกำหนดค่าของ mod_pagespeed มักพบในไดเรกทอรี /usr/local/nginx/conf/

การกำหนดค่าโมดูล Mod_Pagespeed

ใน Apache mod_pagespeed จะเปิดโดยอัตโนมัติเมื่อติดตั้ง ในขณะที่ใน Nginx คุณต้องวางบรรทัดต่อไปนี้ในไฟล์ nginx.conf ของคุณและในทุกบล็อกเซิร์ฟเวอร์ที่เปิดใช้งาน PageSpeed:

pagespeed on;

Needs to exist and be writable by nginx.  Use tmpfs for best performance.
pagespeed FileCachePath /var/ngx_pagespeed_cache;

Ensure requests for pagespeed optimized resources go to the pagespeed handler
and no extraneous headers get set.
location ~ "\.pagespeed\.([a-z]\.)?[a-z]{2}\.[^.]{10}\.[^.]+" {
  add_header "" "";
}
location ~ "^/pagespeed_static/" { }
location ~ "^/ngx_pagespeed_beacon$" { }

สุดท้ายอย่าลืมรีสตาร์ทเซิร์ฟเวอร์ Apache หรือ Nginx เพื่อให้ mod_pagespeed ทำงานได้อย่างถูกต้อง

ขั้นตอนที่ 4: การตรวจสอบโมดูล Mod_Pagespeed

ในการตรวจสอบโมดูล mod_pagespeed เราจะใช้คำสั่ง curl เพื่อทดสอบในโดเมนหรือ IP ดังที่แสดง:

curl -D- http://192.168.0.15/ | less
อาปาเช่
HTTP/1.1 200 OK
Date: Fri, 04 Mar 2016 07:37:57 GMT
Server: Apache/2.4.6 (CentOS) PHP/5.4.16
...
X-Mod-Pagespeed: 1.9.32.13-0
---
งินซ์
HTTP/1.1 200 OK
Date: Fri, 04 Mar 2016 07:37:57 GMT
Server: nginx/1.4.0
...
X-Page-Speed: 1.5.27.1-2845
...

หากคุณไม่เห็นส่วนหัว X-Mod-Pagespeed แสดงว่าไม่ได้ติดตั้ง mod_pagespeed จริงๆ

ขั้นตอนที่ 5: การเปิดและปิดโมดูล

หากคุณไม่ต้องการใช้ mod_pagespeed โดยสิ้นเชิง คุณสามารถ ปิด ได้โดยการแทรกบรรทัดต่อไปนี้ลงในไฟล์ pagespeed.conf ที่ด้านบน

ModPagespeed off

ในทำนองเดียวกัน หากต้องการโมดูล เปิด ให้แทรกบรรทัดต่อไปนี้ลงในไฟล์ pagespeed.conf ที่ด้านบน

ModPagespeed on

อย่างที่บอกไปแล้วข้างต้นหลังจากติดตั้ง mod_pagespeed เว็บไซต์ของเราโหลดเร็วขึ้น 40%-50% เราต้องการทราบเกี่ยวกับความเร็วเว็บไซต์ของคุณหลังจากติดตั้งลงในระบบของคุณผ่านทางความคิดเห็น

สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับการกำหนดค่า คุณสามารถดูหน้า mod_pagespeed อย่างเป็นทางการได้ที่ https://developers.google.com/speed/pagespeed/module/