จะตรวจสอบว่าการบีบอัด Apache ทำงานได้อย่างไร?


23

ฉันเพิ่งเพิ่มสิ่งต่อไปนี้ในไฟล์กำหนดค่า Apache ของฉัน:

AddOutputFilterByType DEFLATE text/html text/plain text/xml

ฉันจะตรวจสอบว่ามันใช้งานได้จริงได้อย่างไร ไม่มีอะไรในเบราว์เซอร์ที่บอกฉันว่าหน้ามีเนื้อหา gzipped

คำตอบ:


25

ทางเลือกในการตรวจสอบอย่างรวดเร็วส่วนหัวของการตอบสนองของ HTTP ที่จะใช้ขด

ตัวอย่างเช่นหากส่วนหัวการเข้ารหัสเนื้อหามีอยู่ในการตอบสนองmod_deflate จะทำงาน:

$ curl -I -H 'Accept-Encoding: gzip,deflate' http://www.example.org/index.php
[...]
Content-Encoding: gzip
[...]

หากคุณรันคำสั่งดังกล่าวโดยไม่มีส่วน-H 'ยอมรับการเข้ารหัส: gzip, ยุบ'ซึ่งหมายความว่าไคลเอนต์ HTTP ของคุณไม่สนับสนุนการอ่านเนื้อหาที่บีบอัดแล้วส่วนหัวการเข้ารหัสเนื้อหาจะไม่ปรากฏในการตอบสนอง

หวังว่านี่จะช่วยได้


5
คุณควรจะสามารถที่จะแทนที่ด้วย-H .. --compress
Dan Carley

ฉันสารภาพว่าฉันคิดถึงสิ่งนั้นทั้งหมด! ขอขอบคุณที่ชี้ออก :)
เกิดมาเพื่อขี่

โปรดทราบว่าถ้าคุณไม่ใช้-Iตัวเลือกที่มีความแตกต่างระหว่างและ-H 'Accept-Encoding: gzip,deflate' --compressอันสุดท้ายบีบอัดเนื้อหาเอาท์พุท (ตรวจสอบคำตอบนี้stackoverflow.com/a/8365089/162178 )
MrBuBBLs

16

สำหรับวิธีที่ง่ายคุณสามารถใช้ google chrome เปิดเมนูเครื่องมือ> เครื่องมือสำหรับนักพัฒนาแล้วดูภาพนี้ ป้อนคำอธิบายรูปภาพที่นี่

หากคุณปิดใช้งานการบีบอัดคุณจะไม่เห็นข้อความ gzip นั้น

หวังว่ามันจะช่วย


1

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

หมายเหตุ: คำตอบนี้ตอนนี้ CW - โปรดอัปเดตด้วยข้อมูลเพิ่มเติมหากคุณต้องการ (ฉันไม่ได้มีเวลาตอนนี้!)


+1 พู้ทำเล่น คุณควรเพิ่มรายละเอียดบางอย่างเกี่ยวกับสิ่งที่ต้องค้นหาในตัวตรวจสอบ
Dan Carley

@ แดน: ฉันชอบ แต่ไม่สามารถทำให้เวลาในขณะนี้ โปรดอย่าลังเลที่จะมีส่วนร่วมถ้าคุณสามารถทำได้ (ตอนนี้เป็น CW แล้ว)
Michael Haren

1

ฉันใช้เครื่องมือการบีบอัด HTTPที่ whatsmyip.org เป็นประจำ

อีกวิธีคือใช้คม ง่ายต่อการติดตั้งบน Linux จาก repos และฉันคิดว่าคุณสามารถรับเวอร์ชัน Windows ได้เช่นกัน เพียงแค่เรียกใช้คำสั่ง:

lynx -head -dump "http://www.example.com/page.html"

จากนั้นตรวจสอบว่ามีบรรทัดพูดContent-Encoding: gzipหรือไม่


1

มีบริการเว็บที่ฉันสร้างขึ้นโดยเฉพาะเพื่อจุดประสงค์นี้ ฉันต้องการวิธีง่ายๆในการตรวจสอบ gzip (ในแหล่งข้อมูลทั้งหมดของไซต์) โดยไม่ต้องขุดลงในสารวัตรหรือใช้ปลั๊กอินของเบราว์เซอร์

gzipWTF - วิธีที่ง่ายที่สุดในการตรวจสอบ gzip



0

หากคุณใช้ Safari โดยเปิดใช้เมนูพัฒนาคุณสามารถใช้ตัวตรวจสอบเว็บได้ สารวัตรเว็บ

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

Screeshot ผ่านบล็อก webkit.org


0

ฉันแนะนำAdd-onของWeb Developerสำหรับ firefox สามารถแสดงส่วนหัวการตอบกลับซึ่งมีประโยชน์มากในการแก้ไขข้อบกพร่องของปัญหาอื่นด้วย

ตัวอย่างเช่น:

Date: Thu, 05 Nov 2009 08:46:30 GMT
Server: Apache
X-Powered-By: PHP/5.3.0
Vary: Accept-Encoding
Content-Encoding: gzip
Content-Length: 6446
Connection: close
Content-Type: text/html

200 OK

.. ซึ่งชัดเจนบอกว่าการตอบสนองถูก gzipped ส่วนหัวยังมีประโยชน์อย่างมากในการแก้ไขปัญหาเกี่ยวกับส่วนหัวอื่น ๆ ที่เกี่ยวข้องเช่น eTags และ expires

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.