นี่คือการออกแบบเพื่อให้หน้าแคชที่มีไฟล์รุ่นเก่าไม่เสียหาย เห็นนี้ปัญหาปิด
TL; DR: พวกเขาจะถูกลบโดยอัตโนมัติ 30 วัน (หรือสิ่งที่คุณdrupal_stale_file_threshold
ตัวแปรมีการตั้งค่า) หลังจากที่พวกเขาสร้างขึ้นผ่านทางและdrupal_clear_css_cache()
drupal_clear_js_cache()
ดังนั้นทางออกคือการปรับเปลี่ยนdrupal_stale_file_threshold
ค่าให้ต่ำกว่าค่าเริ่มต้น 30 วัน
- เมื่อใดที่ไฟล์เก่าถูกลบ
ไฟล์แคชเก่าจะไม่ถูกลบทันทีเมื่อตัวแปรการค้นหาถูกลบ แต่จะถูกลบหลังจากระยะเวลาที่กำหนดโดย drupal_delete_file_if_stale () วิธีนี้ช่วยให้มั่นใจได้ว่าไฟล์ที่อ้างอิงโดยหน้าแคชจะยังคงมีอยู่
drupal_delete_file_if_stale()
เริ่มต้นที่ 30 วันดังนั้นหาก a) Cron ทำงานอย่างถูกต้องและ b) คุณเห็นไฟล์รวมที่เก่ากว่า 30 วันคุณมีปัญหาอื่น
variable_get('drupal_stale_file_threshold', 2592000)
คือการตรวจสอบ 30 วัน
variable_set('drupal_stale_file_threshold', 172800)
จะเปลี่ยนการหมดเวลาเป็นสองวัน บนเว็บไซต์ที่มีการควบคุมการจัดการแคชอย่างเข้มงวดเวลาอาจสั้นลงได้
แหล่งข้อมูล: http://api.drupal.org/api/drupal/includes!common.inc/function/drupal_build_css_cache/7
ดูdrupal_delete_file_if_stale()
ข้อมูลเพิ่มเติม
- มีเหตุผลบางอย่างทั้งไฟล์. css และ. css.gz
หากมีการเปิดใช้งานการบีบอัด CSS gzip จะมีการเปิดใช้งาน URL ที่สะอาด (ซึ่งหมายความว่ากฎการเขียนซ้ำกำลังทำงาน) และส่วนขยาย zlib นั้นพร้อมใช้งานจากนั้นสร้างเวอร์ชัน gzipped ของไฟล์นี้ ไฟล์นี้ให้บริการตามเงื่อนไขกับเบราว์เซอร์ที่ยอมรับ gzip โดยใช้กฎ. htaccess
แหล่งที่มา:
http://api.drupal.org/api/drupal/includes!common.inc/function/drupal_build_css_cache/7 (ในความคิดเห็นของฟังก์ชั่น)
ยังเห็นซึ่งเกือบจะเหมือนกับdrupal_build_js_cache()
drupal_build_css_cache()