ทำเว็บให้เร็วขึ้นด้วยการบีบอัดรูปให้เล็กลงทั้งเว็บ

DevOps Feb 19, 2020

ลูกค้ามีเว็บไซต์เดิมที่ใช้งานอยู่แล้ว และทีมเราได้รับงานมาพัฒนาต่อให้มี features ต่างๆ มากขึ้น โดยเว็บตัวนี้เป็นลักษณะให้ผู้คนสามารถมาเขียนบทความลงในเว็บได้เลย ทำให้ตัวเว็บจะมีบทความเพิ่มขึ้นมาเรื่อยๆ และที่สำคัญรูปก็จะเยอะตามจำนวนบทความที่เกิดขึ้นด้วย

ทีมผมได้ลองใช้ Google page speed ช่วยทดสอบและวิเคราะห์เว็บไซต์เดิมพบว่ารูปเก่าๆ นั้นมีขนาดที่ใหญ่มากเกินความจำเป็น ผมเลยคิดว่าต้องหา script มาเพื่อลดขนาดรูปทั้งหมดก่อนแล้ว

ลดขนาดรูปทั้งเว็บด้วย Jpegoptim

Jpegoptim เป็นคำสั่งที่ไว้ลดขนาดรูป .jpeg ได้ซึ่งจะทำให้รูปที่ได้ไม่เสียคุณภาพลงด้วย และจะได้ขนาดรูปที่เล็กลงทำให้เว็บไซต์โหลดเร็วขึ้นตามมา

สำหรับคนที่ใช้งานบน Ubuntu server สามารถติดตั้งได้ตามนี้

sudo apt-get install jpegoptim

วิธีใช้ jpegoptim ลดขนาดรูปก็พิมพ์คำสั่งดังนี้

jpegoptim sample.jpg

แต่ผมต้องการลดขนาดรูปทุกรูปที่อยู่ในโฟสเดอร์ที่ต้องการ ต้องเขียน script ขึ้นมาดังนี้

#/bin/bash

optimize() {
  jpegoptim *.jpg --strip-all
  for i in *
  do
    if test -d $i
    then
      cd $i
      echo $i
      optimize
      cd ..
    fi
  done
  echo
}
optimize

สมมติว่าให้ชื่อไฟล์ jpeg-compress.sh ให้นำ script ไปวางไว้ในโฟสเดอร์ที่ต้องการแล้วเรียกใช้ดังนี้

chmod +x jpeg-compress.sh
./jpeg-compress.sh

Thanks: jmperezperez.com/jpegoptim-optimize-jpg-page-speed

Arnon Kijlerdphon

IT manager & DevOps @Twin Synergy Co.,Ltd

Great! You've successfully subscribed.
Great! Next, complete checkout for full access.
Welcome back! You've successfully signed in.
Success! Your account is fully activated, you now have access to all content.