5
ปิดใช้งานการแคชเมื่อให้บริการไฟล์คงที่ด้วย Nginx (เพื่อการพัฒนา)
เรากำลังใช้ Nginx เพื่อให้บริการไฟล์คงที่บนแพลตฟอร์มการพัฒนา เนื่องจากเป็นแพลตฟอร์มการพัฒนาเราจึงต้องการปิดใช้งานการแคชเพื่อให้การเปลี่ยนแปลงแต่ละครั้งถูกส่งไปยังเซิร์ฟเวอร์ การกำหนดค่าของ VHost นั้นค่อนข้างง่าย: server { server_name static.server.local; root /var/www/static; ## Default location location / { access_log off; expires 0; add_header Cache-Control private; } } เมื่อเราเข้าถึงไฟล์ HTML ( http: //static.server.local/test.html ) เราไม่มีปัญหา: เซิร์ฟเวอร์จะส่งคืนรหัส304 ไม่ถูกแก้ไขตราบใดที่ไฟล์ไม่เปลี่ยนแปลงและมีการตอบสนอง200 OKด้วย ไฟล์ที่แก้ไขเมื่อไฟล์ถูกเปลี่ยน อย่างไรก็ตามดูเหมือนว่าจะทำงานแตกต่างจาก Javascript หรือไฟล์ CSS เมื่อไฟล์มีการเปลี่ยนแปลงเราจะได้รับการตอบสนอง200 OKตามที่คาดไว้ แต่มีข้อความเก่า มีกลไกแคชภายในใน Nginx ที่สามารถอธิบายพฤติกรรมนี้ได้หรือไม่? หรือการกำหนดค่าบางอย่างที่เราควรเพิ่ม? …