จะบังคับให้รีเฟรชโดยไม่มีแคชใน Google Chrome ได้อย่างไร [ซ้ำ]


307

คำถามนี้มีคำตอบอยู่ที่นี่แล้ว:

Chrome มีค่าเทียบเท่ากับการรีเฟรช Ctrl + F5 ของ Firefox หรือไม่ ฉันดูเหมือนจะหาไม่เจอ

เมื่อคืนฉันเปลี่ยน gravatar และฉันสามารถเห็นอันใหม่ใน Firefox หลังจากการรีเฟรช Ctrl + F5 แต่ Chrome ดูเหมือนจะดื้อดึงกับ Gravatar ตัวเก่า ฉันเดาว่าฉันสามารถล้างแคชด้วยตนเอง แต่ถ้ามีคำสั่งแป้นพิมพ์ทำฉันต้องการทราบว่ามันคืออะไร (เพราะมันจะเป็นประโยชน์สำหรับการพัฒนาเว็บด้วย)


18
CTR + R ตามด้วย CTRL + F5 หนึ่งหรือสองครั้ง - มักจะแยกปัญหาออก หรือปิดใช้งานแคชในเครื่องมือสำหรับนักพัฒนาซอฟต์แวร์ -> Sprog (บอทขวา) -> เครือข่าย - ปิดใช้งานแคช .. โหลดหน้าเว็บซ้ำและลองปิดใช้งาน
Piotr Kula

1
เพิ่มฟีเจอร์ใหม่ที่ยอดเยี่ยมให้กับ Chrome เพื่อบังคับให้รีเฟรชอย่างหนัก - superuser.com/a/512833/92862
Coops

คำตอบ:


197

เอกสารประกอบของ Chromeระบุว่าCtrl+ F5หรือShift+ F5ควรทำ "โหลดหน้าปัจจุบันของคุณใหม่โดยไม่สนใจเนื้อหาที่แคช"

ถ้ามันไม่ทำงานคุณสามารถยื่นรายงานข้อผิดพลาดได้แต่ดูเหมือนว่ามีบางคนที่มีปัญหาเดียวกัน

[บันทึกข้อผิดพลาดที่มีอยู่เกี่ยวกับปัญหานี้] ปิดเป็นรายการที่ซ้ำกันปัญหายังคงอยู่:

[ ปัญหา: 94090 ]


1
ดูเหมือนว่ามันอาจเป็นความผิดของ Gravatar บางส่วน Last-Modified: Fri, 20 Jun 2008 12:25:23 GMTในส่วนหัวสำหรับภาพของพวกเขากำลังจะส่ง ฉันคิดว่านี่เป็นวันที่ฉันอัพโหลด Gravatar เก่าหรือวันที่ฉันสมัคร Gravatar เบราว์เซอร์จะต้องเห็นและคิดว่า "โอ้ไฟล์ใหม่นี้มีวันที่แก้ไขล่าสุดดังนั้นฉันจะใช้แคชที่ยังคงอยู่" เป็นข้อผิดพลาดหาก Chrome กำลังทำเช่นนั้นในแคชรีเฟรชโดยไม่สนใจ แต่เป็นข้อบกพร่องสำหรับ Gravatar ที่จะส่งการแก้ไขครั้งล่าสุดผิดเช่นกัน ฉันติดต่อทั้งสองฝ่ายแล้ว :)
กีบ

4
ฉันโหลดสคริปต์แบบอะซิงโครนัสจาก javascript และ Chrome ดูเหมือนว่าจะใช้เวอร์ชันแคชต่อไปแม้หลังจาก ctrl-f5 เป็นต้นการล้างแคชใช้งานได้ แต่วิธีแก้ไขอื่นคือการเปิดหน้าต่างไม่ระบุตัวตน (ctrl-shift-n) เนื่องจากมันจะเป็นโหมดไม่ระบุตัวตนจะไม่ใช้แคช
Tauren

3
Haha Chrome นั้นแคชมากวิธีเดียวที่ฉันจะเอาชนะได้คือกด Shift + F5 อย่างน้อยสองครั้ง (จริงๆ)
Halil Özgür

1
ทีมงาน Chrome ควรรู้สึกอับอายที่มีบั๊กดังกล่าวอยู่ในคิวบั๊กนานกว่า 2 ปี ฉันผิดหวังมาก.
Brian Webster

2
ไม่ทำงานแน่นอน Chrome สามารถดูดได้ไม่ดีในบางครั้ง
iconoclast

200

ในเครื่องมือนักพัฒนาซอฟต์แวร์ที่เปิด ( Ctrl+ Shft+ Iหรือ+ + I):

  1. เลือกแท็บเครือข่าย
  2. เปิดใช้งานกล่องกาเครื่องหมายปิดใช้งานแคช
  3. อย่าปิดเครื่องมือนักพัฒนาซอฟต์แวร์ไม่เช่นนั้นแคชจะเปิดใช้งานอีกครั้ง

ป้อนคำอธิบายรูปภาพที่นี่


ใช้งานไม่ได้สำหรับฉันต้องใช้โหมดไม่ระบุตัวตน
Antony Stubbs

4
แต่ทำไมไม่มีคีย์ลัดเพื่อเรียกสิ่งนี้!
Coops

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

แม้จะเปิดใช้งานกล่องกาเครื่องหมายปิดใช้งานแคชและเครื่องมือสำหรับนักพัฒนาซอฟต์แวร์เปิดดูเหมือนว่ายังคงมีความแตกต่างระหว่าง F5 และ Shift + F5 การโทร ajax ในหน้าเว็บของฉันนั้นทำงานแตกต่างกันไปขึ้นอยู่กับประเภทของการรีเฟรชและฉันยังไม่เข้าใจว่าทำไม
สเตฟาน

3
ในเครื่องมือนักพัฒนาซอฟต์แวร์รุ่นใหม่ (สามารถเรียกใช้โดย F12 ได้เช่นกัน) การตั้งค่า "ปิดใช้งานแคช" สามารถพบได้ในแท็บเครือข่าย
59

98

สำหรับ Mac มันคือ Shift + Command + R หรือกด Shift ค้างไว้ในขณะที่คลิกปุ่มโหลด (ตรงข้ามกับ Command + R หรือคลิกปกติสำหรับการรีเฟรชปกติ)

รายละเอียดเพิ่มเติมบางส่วน:

สำหรับ Shift + Command + R แคชจะถูกข้ามและทรัพยากรจะถูกร้องขอเช่นไม่มีแคช

สำหรับคำสั่ง + R Chrome จะออกIf-Modified-SinceหรือEtagการร้องขอไปยังเว็บเซิร์ฟเวอร์, แม้สำหรับสิ่งที่จะถูกเก็บไว้จริง 304 Not Modifiedสำหรับส่วนใหญ่ถ้าไม่ทั้งหมดเนื้อหาเซิร์ฟเวอร์ควรแล้วตอบสนองกับ นี่เป็นจริงสำหรับเบราว์เซอร์สมัยใหม่ส่วนใหญ่ถ้าไม่ใช่ทั้งหมด

วิธีเดียวที่จะบังคับให้ต้องพึ่งพาแคช (โดยไม่ต้องใช้เบราว์เซอร์แม้กระทั่งขอการเปลี่ยนแปลงที่เป็นไปได้) ดูเหมือนว่าจะคลิกลิงก์บนหน้าเว็บหรือตามลิงก์ที่คั่นหน้าไว้หรือไปที่แถบตำแหน่ง URL และกดปุ่ม Return ที่นั่น Command + L, Return)

อย่างไรก็ตาม: ปัญหาที่ทราบมานานแล้วใน Chrome, Chrome Forced Refresh ไม่สนใจแคช (และรีโหลด / รีเฟรชล่าสุดไม่รีเฟรช ) หรือบางทีอาจเป็นคุณลักษณะใน WebKit จริงแหล่งย่อยที่แทรกแบบไดนามิกจะไม่ถูกตรวจสอบอีกครั้งแม้ว่าเอกสารที่มี โหลดซ้ำทำให้ Chrome ไม่ล้างแคชที่เกี่ยวข้องทั้งหมดเมื่อใช้วิธีการด้านบน นักพัฒนา Chromium อธิบาย :

แท็บเครือข่ายของเครื่องมือสำหรับนักพัฒนาซอฟต์แวร์แสดงฟอเรสต์ของทรัพยากรทั้งหมดขณะที่โหลด มีเส้นแนวตั้งสองเส้นที่ด้านขวามือ ... หนึ่งในนั้นมีข้อความว่า "โหลดเหตุการณ์ที่เรียกว่าโหลด" เมื่อวางเมาส์ สิ่งใดก็ตามที่โหลดหลังจากจุดนั้นไม่ได้เป็นส่วนหนึ่งของหน้าอย่างเป็นทางการ (หน้าหนึ่งสามารถออกคำขอเป็นเวลาหลายชั่วโมง) [... ] ดังนั้นมันจะไม่ "รีเฟรช" เมื่อรวมกันของ f5 นี่คือโดยการออกแบบ
[... ]
การแคช[ของทรัพยากรใด ๆ ก่อนและหลังบรรทัด "Load event fired"]ถูกกำหนดโดยส่วนหัว HTTP ของการตอบสนองไม่ใช่ตามเวลาที่มีการออกคำขอ

นอกจากนี้ยังทราบ @ ทวีตของ ChromiumDev :

Chrome DevTools 'Disable Cache ทำให้ดิสก์แคช (เหมาะสำหรับการพัฒนา!) แต่ .. ในขณะที่มองเห็น devtools เท่านั้น


ขอบคุณสำหรับคำตอบที่ดี อาจเป็นเรื่องเทคนิคเกินไปสำหรับผู้ชม แต่ฉันให้ความสำคัญเป็นอย่างมาก
sholsinger

Command-Shift-R ไม่ทำงานใน Chrome มั่นคงในปัจจุบัน
Olivier

ดูเหมือนว่าจะทำงานได้ดีบน Mac ของฉัน @olouv คุณดูที่แท็บเครือข่ายของเครื่องมือสำหรับนักพัฒนาหรือไม่ (จริงในเว็บไซต์นี้มีทรัพยากรไม่กี่แห่งที่ Chrome ยังคงออกIf-Modified-Sinceคำขอแทน แต่ทรัพยากรนั้นได้รับการร้องขอจาก JavaScript ไม่ใช่ HTML parser นอกจากนี้เนื่องจากแคชสำหรับหน้าเว็บนั้นถูกตั้งค่าไว้เพียงหนึ่งนาที อาจจะแตกต่างกันเล็กน้อยในเวลาเซิร์ฟเวอร์และเวลาท้องถิ่นอาจทำให้เกิดความวุ่นวายได้เช่นกัน?)
Arjan

ระวังทราบสองปีเก่า แต่ปัจจุบันยังคงข้อผิดพลาดใน Chrome: Chrome บังคับรีเฟรชไม่ละเว้นแคช
Arjan

22
  1. ดึงคอนโซลขึ้น
  2. คลิกที่ไอคอนด้านล่างขวาเพื่อฟันเฟือง
  3. ทำเครื่องหมาย [ทั่วไป> ปิดใช้งานแคช]
  4. โหลดหน้าใหม่ (อย่างไรก็ตาม)!
  5. เปิดเครื่องมือของนักพัฒนาซอฟต์แวร์ไว้ (UPDATE)



เยี่ยมมากในความเป็นจริงแม้หลังจากที่ฉันปิด devtool มันจะล้างแคชเสมอ
diyism

15

คำถามนี้ค่อนข้างเก่า แต่ใน Chrome เวอร์ชันล่าสุด

  • เปิดการDeveloper toolsใช้F12หรือCtrl+ Shift+I
  • คลิกขวาที่ปุ่ม Refresh และเลือกEmpty cache และ Hard reload

การทำเช่นนี้จะผ่านการแคชและโหลดหน้าซ้ำทั้งหมด

หมอบอกว่าCtrl+ F5หรือShift+ F5แต่น่าเสียดายที่วันนี้ข้อผิดพลาดยังไม่ได้รับการแก้ไข :-(


1
ในฐานะที่เป็นกัน: นี่เป็น Windows เท่านั้น (และฉันได้อ่านมันใช้ได้เฉพาะเมื่อเครื่องมือสำหรับนักพัฒนาที่มีการเปิด?)
Arjan

2
ทำงานได้เฉพาะเมื่อเครื่องมือของนักพัฒนาซอฟต์แวร์เปิดอยู่ตามที่คุณพูด Arjan
mgkrebbs

คุณสามารถกด SHIFT ค้างไว้ในขณะที่คลิกปุ่มรีเฟรช
Bolli

9

ฉันมีไฟล์ (รูปภาพและหน้า html แบบเต็ม) บนเซิร์ฟเวอร์ที่ได้รับการอัปเดตและดูเหมือนว่าไม่มีการรวมกันของคีย์ใน chrome ที่จะดึงไฟล์เหล่านั้นออกมา

ฉันใช้โหมดไม่ระบุตัวตนของ Chrome - CTRL-SHIFT-N - เมื่อฉันต้องการบังคับให้รีเฟรช

โปรดทราบว่า CTRL-R หรือ CTRL-F5 ในขณะที่อยู่ในหน้าต่างที่ไม่ระบุตัวตนดูเหมือนจะไม่ทำงานเช่นกัน คุณต้องปิดและเปิดหน้าต่างที่ไม่ระบุตัวตนอีกครั้ง - ดังนั้นการพึ่งพาทางลัดของฉัน - CTRL-W เพื่อปิด CTRL-SHIFT-N เพื่อเปิดอีกครั้ง


คุณหมายถึง "เปิดแท็บไม่ระบุตัวตนอีกครั้ง" ไม่ใช่หน้าต่างฉันคิดไหม
mgol

1
น่าสนใจสำหรับฉัน CTRL-SHIFT-N เปิดหน้าต่างใหม่ไม่ใช่แค่แท็บ - นั่นไม่ใช่กรณีเสมอไปหรือ
Daniel Gill

6

ไม่มีวิธีง่ายๆในการทำเช่นนี้ใน Chrome เช่นเบราว์เซอร์อื่น ๆ เอกสารอาจกล่าวได้ว่า CTRL + F5 หรือ SHIFT + F5 ควรโหลดซ้ำและไม่สนใจแคช แต่ไม่สามารถทำได้ ฉันมีสไลด์โชว์แฟลชที่เก็บการตั้งค่า / การกำหนดค่าในไฟล์. xml และหลังจากอัปเดตไฟล์ XML แล้ว Chrome จะยังคงโหลดเวอร์ชันแคชไว้จนกว่าฉันจะล้างแคช ฉันต้องเรียกใช้เบราว์เซอร์อื่นเสมอเมื่ออัปเดตสไลด์โชว์ดังนั้นฉันจึงไม่ต้องล้างแคช Chrome ตลอดเวลา


5
แคชแฟลชเป็นสิ่งที่แตกต่างจาก Chrome อย่างสิ้นเชิง
Joshua

@Joshua ยกเว้นว่าผู้ชายคนนี้จะทำงานในเบราว์เซอร์อื่น แต่ไม่ใช่ Chrome อย่าลืม Chrome มาพร้อมกับของตัวเองสร้างของผู้เล่นแฟลช
Camilo Martin

@CamiloMartin ... ซึ่งมีแคชแยกต่างหากเช่นกัน เดี๋ยวก่อน ... คุณตอบกระทู้ที่อายุเกิน 2 ปีหรือไม่? ฮึ. ฉันเอาเหยื่อ
Joshua

@Joshua โอ้คุณขวาผมไม่ทราบ :)
Camilo มาร์ติน

4

Ctrl - Shift - Delete จะช่วยให้คุณลบแคชในชั่วโมงก่อนหน้า ซึ่งจะรับรองได้ว่าในครั้งต่อไปที่คุณโหลดไซต์ใหม่จะมีความสดใหม่


4

แน่นอนข้อผิดพลาดใน Chrome - มันยังภาพที่ควรจะเปลี่ยน แต่จะใช้ภาพเก่าแทนแม้ซ้ำหลังจากกดปุ่ม+CtrlF5

ฉันพยายามเปลี่ยนโลโก้ Google Apps แต่วิธีเดียวที่จะเปลี่ยนใน Gmail คือถ้าฉันใช้โหมดไม่ระบุตัวตนหรือล้างแคชทั้งหมด Ctrl+ F5เก็บโลโก้เก่าไว้


3

ฉันทำสิ่งนี้: คลิกขวาที่เฟรม (ที่ไม่มีการซิงค์) และ SHIFT คลิกตัวเลือก "โหลดเฟรมใหม่" เฟรมรีเฟรชอย่างถูกต้องแล้ว


ไม่ได้ผลสำหรับฉัน
Coops

3

เมื่อต้องการล้างแคชแอปพลิเคชันที่ระบุไว้อย่างชัดเจนการนำทางไปยังchrome://appcache-internals/โครเมี่ยมและลบแคชสำหรับเว็บไซต์เฉพาะ

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