ERR_CACHE_MISS: cách sửa lỗi trên Chrome, Edge, Android
Điểm chính
ERR_CACHE_MISS nghĩa là Chrome cần một bản sao đã lưu của trang nhưng không có. Thường thì bạn nhấn Quay lại một trang do biểu mẫu tạo ra (yêu cầu POST), nên Chrome hiện "Xác nhận việc Gửi lại Biểu mẫu" thay vì tự gửi lại biểu mẫu. Nhấn Tải lại và chọn Tiếp tục chỉ khi việc lặp lại hành động là vô hại (một lượt tìm kiếm, không phải thanh toán); nếu không, hãy mở lại trang từ chính website. Trong ứng dụng Android, lỗi này thường có nghĩa là WebView không dùng được mạng. Chủ website phòng lỗi bằng Post/Redirect/Get.
Kiểm tra ngay

Bắt đầu đọc
- ERR_
CACHE_ MISS là gì? - ERR_
CACHE_ MISS trông như thế nào - Nguyên nhân gây ra ERR_
CACHE_ MISS - ERR_
CACHE_ MISS và xác nhận gửi lại biểu mẫu - Cách sửa lỗi ERR_
CACHE_ MISS (cho người dùng) - Cách 1: tải lại, và chỉ gửi lại khi an toàn
- Cách 2: xóa bộ nhớ đệm (chỉ khi lỗi cứ lặp lại)
- Cách 3: thử Ở chế độ ẩn danh
- Cách 4: tắt tiện ích mở rộng trình duyệt
- Cách 5: cập nhật Chrome (và Android System WebView)
- Cách sửa lỗi ERR_
CACHE_ MISS (cho nhà phát triển) - Mẫu Post/Redirect/Get (PRG)
- Kiểm tra header Cache-Control
- Sửa xung đột cache WordPress
- ERR_
CACHE_ MISS trên Android (ứng dụng và WebView) - ERR_
CACHE_ MISS trên các trình duyệt khác - Các lỗi cache liên quan trên Chrome
- Câu hỏi thường gặp
ERR_CACHE_MISS là gì?
ERR_CACHE_MISS nghĩa là Chrome cần một bản sao đã lưu (trong bộ nhớ đệm) của trang nhưng không có. Thường gặp nhất là khi bạn nhấn Quay lại một trang do biểu mẫu tạo ra, chẳng hạn kết quả đăng nhập, tìm kiếm hoặc thanh toán: Chrome không tự gửi lại biểu mẫu, nên hiện Xác nhận việc Gửi lại Biểu mẫu kèm mã ERR_CACHE_MISS.
Lỗi này không bao giờ rời khỏi trình duyệt của bạn và không phải mã trạng thái HTTP. Danh sách lỗi của Chromium định nghĩa nó là lỗi -400: "The cache does not have the requested entry" (bộ nhớ đệm không có mục được yêu cầu) (net_error_list.h). Chrome giữ bản sao kết quả biểu mẫu để nút Quay lại hiển thị lại được; khi bản sao đó mất, cách duy nhất để dựng lại trang là gửi lại biểu mẫu, và Chrome để bạn quyết định việc đó.
Đây là một lần dừng để bảo vệ bạn, không phải sự cố hay mối đe dọa bảo mật: gửi lại biểu mẫu có thể lặp lại những gì nó đã làm, như một khoản thanh toán, một đơn hàng hay một bài đăng.
Trang có gửi no-store không? Kiểm tra header của nó
ERR_CACHE_MISS trông như thế nào
Chrome và Edge hiện một trong các trang sau, với ERR_CACHE_MISS in dưới thông báo:
- Xác nhận việc Gửi lại Biểu mẫu — sau khi Quay lại hoặc Chuyển tiếp đến một trang do biểu mẫu tạo ra: "Trang web này yêu cầu dữ liệu mà bạn đã nhập trước đó để được hiển thị đúng cách. Bạn có thể gửi lại dữ liệu này nhưng làm như vậy bạn sẽ lặp lại mọi hoạt động mà trang này đã thực hiện trước đó." Bên dưới: "Nhấn nút tải lại để gửi lại các dữ liệu cần thiết để tải trang."
- Không thể tải trang web này từ bộ nhớ đệm — kèm dòng "Không thể đọc được bản sao đã lưu (đã lưu vào bộ nhớ đệm) của trang web này." và nút Tải lại: một trang mà Chrome chỉ lấy được từ bộ nhớ đệm đã không có ở đó
- Hộp thoại gửi lại — sau khi bạn nhấn Tải lại ở trang đầu tiên: "Trang mà bạn đang tìm sử dụng thông tin bạn đã nhập vào. Việc quay lại trang đó có thể lặp lại bất kỳ tác vụ nào bạn đã thực hiện. Bạn có muốn tiếp tục không?" với nút Tiếp tục
- net::ERR_CACHE_MISS — cùng lỗi đó trong console của DevTools, hoặc trong nhật ký WebView của một ứng dụng Android
Nguyên nhân gây ra ERR_CACHE_MISS
Mọi nguyên nhân đều quy về một điều: Chrome được yêu cầu dùng bộ nhớ đệm, và trang không có trong đó.
- Quay lại hoặc Chuyển tiếp đến trang kết quả của biểu mẫu — Chrome lưu trang mà biểu mẫu (yêu cầu POST) tạo ra để Quay lại hiển thị lại được. Nếu bản sao đó mất, Chrome sẽ phải gửi lại biểu mẫu, nên nó dừng lại và hỏi.
- Trang yêu cầu không được lưu — trang kết quả gửi kèm
Cache-Control: no-storekhông bao giờ được giữ lại, nên Quay lại luôn dẫn đến trang gửi lại biểu mẫu. - Bộ nhớ đệm bị xóa hoặc thu gọn — xóa dữ liệu duyệt web, hoặc Chrome cắt bớt bộ nhớ đệm để tiết kiệm dung lượng, sẽ làm mất bản sao đã lưu của trang kết quả.
- Tải chỉ từ bộ nhớ đệm — WebView trên Android không có mạng, chế độ ngoại tuyến của một ứng dụng, hoặc một script chỉ xin bản sao đã lưu đều thất bại với ERR_CACHE_MISS khi chưa có gì được lưu.
- Bộ nhớ đệm bị hỏng — ghi chú của chính Chromium cho biết bộ nhớ đệm không đọc được thường do tắt máy không đúng cách. Khi đó hiện trang "Không thể tải trang web này từ bộ nhớ đệm", thường kèm ERR_CACHE_READ_FAILURE.
- Tiện ích can thiệp vào yêu cầu — hiếm khi, một tiện ích chặn hoặc sửa yêu cầu làm trang không tải bình thường. Cửa sổ Ẩn danh sẽ loại trừ được khả năng này.
ERR_CACHE_MISS và xác nhận gửi lại biểu mẫu
Hai thứ này có liên quan nhưng xuất hiện vào những thời điểm khác nhau. Tải lại một trang do biểu mẫu tạo ra sẽ mở ngay hộp thoại Xác nhận việc Gửi lại Biểu mẫu. Còn quay lại trang đó sau này bằng Quay lại hoặc Chuyển tiếp, khi Chrome không còn bản sao, thì hiện trang Xác nhận việc Gửi lại Biểu mẫu kèm mã ERR_CACHE_MISS; nhấn Tải lại ở đó sẽ mở cùng hộp thoại ấy. Tiếp tục sẽ gửi lại biểu mẫu, Huỷ thì giữ nguyên.
Chrome không quyết định thay bạn vì việc gửi biểu mẫu (POST) không phải là yêu cầu "an toàn" theo cách hiểu của HTTP: gửi lại có thể lặp lại mọi việc nó đã làm.
Chọn Tiếp tục với một lượt tìm kiếm, một bộ lọc hoặc một trang bạn chỉ xem. Với thanh toán, đơn hàng, đặt chỗ hay bài đăng, hãy chọn Huỷ rồi kiểm tra lịch sử đơn hàng của website hoặc email của bạn.
Cách sửa lỗi ERR_CACHE_MISS (cho người dùng)
Hãy thử lần lượt theo thứ tự. Cách đầu tiên xử lý trường hợp thường gặp nhất: một trang biểu mẫu mà bạn đã quay lại. Nếu cả website không tải được, hãy xem nó có sập với mọi người không bằng Kiểm tra web sập.
Cách 1: tải lại, và chỉ gửi lại khi an toàn
Ở trang Xác nhận việc Gửi lại Biểu mẫu, nhấn Tải lại (hoặc F5). Chrome sẽ hỏi có gửi lại biểu mẫu không: chọn Tiếp tục chỉ khi việc lặp lại là vô hại. An toàn hơn nữa: đừng dùng Quay lại. Hãy mở lại trang từ menu của chính website hoặc từ thanh địa chỉ, cách này tải một bản mới mà không liên quan đến biểu mẫu.
Với một trang bình thường báo "Không thể tải trang web này từ bộ nhớ đệm", hãy tải lại cứng, cách này bỏ qua bộ nhớ đệm:
# Windows / Linux
Ctrl + Shift + R
# Mac
Cmd + Shift + R
# Windows / Linux alternative
Ctrl + F5 (or Shift + F5)Khi mở DevTools (F12), bạn cũng có thể nhấp chuột phải vào nút tải lại và chọn Làm trống bộ nhớ đệm và tải lại cứng.
Cách 2: xóa bộ nhớ đệm (chỉ khi lỗi cứ lặp lại)
Xóa bộ nhớ đệm không giúp được trường hợp biểu mẫu: nó xóa các bản sao đã lưu nên thậm chí có thể gây ra lỗi. Nó chỉ có ích khi các trang bình thường liên tục báo "Không thể tải trang web này từ bộ nhớ đệm", dấu hiệu của bộ nhớ đệm bị hỏng:
- Bước 1: Nhấn
Ctrl+Shift+Delete(Mac:Cmd+Shift+Delete) để mở Xoá dữ liệu duyệt web - Bước 2: Đặt phạm vi thời gian là Từ trước đến nay
- Bước 3: Chọn Tệp và hình ảnh được lưu trong bộ nhớ đệm (cookie là tùy chọn, xem bên dưới)
- Bước 4: Nhấp Xoá dữ liệu rồi khởi động lại Chrome
Cách 3: thử Ở chế độ ẩn danh
Cửa sổ Ẩn danh bắt đầu với bộ nhớ đệm trống và không có tiện ích của bạn (trừ khi bạn cho phép chúng ở đó). Mở bằng Ctrl+Shift+N (Windows, Linux) hoặc Cmd+Shift+N (Mac) rồi tải cùng trang đó từ website, không dùng Quay lại.
Nếu ở đó chạy được mà cửa sổ thường thì không, thủ phạm là tiện ích hoặc bộ nhớ đệm: hãy thử Cách 2 và 4.
Cách 4: tắt tiện ích mở rộng trình duyệt
Các tiện ích chặn hoặc sửa yêu cầu đôi khi có thể làm trang không tải bình thường.
Vào chrome://extensions/, tắt hết mọi tiện ích rồi tải lại trang. Nếu lỗi biến mất, hãy bật lại từng tiện ích một để tìm ra cái gây lỗi.
Cách 5: cập nhật Chrome (và Android System WebView)
Vào chrome://settings/help để cài bản cập nhật; Chrome áp dụng sau khi khởi động lại. Trên Android, hãy cập nhật cả Chrome lẫn Android System WebView trong Play Store, vì các ứng dụng hiển thị trang web đều dùng WebView.
Nếu lỗi bắt đầu ngay sau một bản cập nhật và xuất hiện cả ở những trang không phải biểu mẫu, hãy tra trình theo dõi lỗi của Chromium xem phiên bản của bạn có lỗi đã biết không.
Cách sửa lỗi ERR_CACHE_MISS (cho nhà phát triển)
Nếu khách truy cập gặp ERR_CACHE_MISS trên website của bạn, gần như chắc chắn họ đang quay lại một trang mà máy chủ dựng thẳng từ một POST của biểu mẫu. Cách sửa nằm ở phía máy chủ: Post/Redirect/Get.
Mẫu Post/Redirect/Get (PRG)
Mẫu Post/Redirect/Get (PRG) là cách sửa dứt điểm ERR_CACHE_MISS. Ý tưởng đơn giản: sau khi xử lý một biểu mẫu POST, hãy trả về một chuyển hướng HTTP (302 hoặc 303) tới một trang xác nhận GET thay vì hiển thị phản hồi trực tiếp.
Không có PRG, lịch sử trình duyệt kết thúc bằng một yêu cầu POST. Khi người dùng tải lại, Chrome hỏi có gửi lại biểu mẫu không; khi họ quay lại bằng Quay lại hoặc Chuyển tiếp mà bản sao đã mất, Chrome hiện ERR_CACHE_MISS. Có PRG, lịch sử kết thúc bằng một yêu cầu GET an toàn, có thể làm mới hoặc quay lại mà không gặp vấn đề gì.
# Without PRG (causes ERR_CACHE_MISS):
POST /checkout → 200 OK (render confirmation page)
# User reloads → "Confirm Form Resubmission" dialog
# User comes back with Back/Forward, copy gone → ERR_CACHE_MISS
# With PRG (no cache issues):
POST /checkout → 303 See Other → Location: /order/12345
GET /order/12345 → 200 OK (render confirmation page)
# User refreshes → Normal page reload (safe GET request)Dùng 303 See Other (nên dùng) hoặc 302 Found cho chuyển hướng. RFC 9110 nói 303 "chủ yếu dùng để cho phép kết quả của một hành động POST chuyển hướng tác nhân người dùng sang một tài nguyên khác", đúng là điều bạn cần. Kiểm tra Redirect của DNS Robot cho bạn thấy mã trạng thái mà endpoint biểu mẫu của bạn thực sự trả về.
Kiểm tra header Cache-Control
Xem trang kết quả của biểu mẫu gửi gì bằng Chrome DevTools (F12 → Mạng → yêu cầu → Headers), hoặc từ bên ngoài bằng Kiểm tra HTTP Header của DNS Robot.
Trên trang do biểu mẫu tạo ra, Cache-Control: no-store khiến Chrome không giữ bản sao mà Quay lại cần, nên mỗi lần Quay lại đều rơi vào trang gửi lại biểu mẫu. Hãy giữ no-store cho các trang có dữ liệu cá nhân hoặc thanh toán và dùng PRG, để kết quả vẫn là một trang GET bình thường.
| Trên trang kết quả của biểu mẫu | Những gì được lưu | Quay lại hiển thị gì |
|---|---|---|
Cache-Control: no-store | Không gì cả | Xác nhận việc Gửi lại Biểu mẫu (ERR_CACHE_MISS) |
no-cache hoặc max-age=… | Một bản sao, giữ cho lịch sử | Bản sao đã lưu |
| PRG: 303 tới một trang GET | Một trang GET bình thường | Chính trang đó; Tải lại an toàn |
Sửa xung đột cache WordPress
Các plugin cache trang không tự gây ra ERR_CACHE_MISS, nhưng một trang giỏ hàng, thanh toán hay đăng nhập bị cache sẽ làm hỏng biểu mẫu và khiến khách truy cập bị đẩy qua lại, và lỗi xuất hiện ở đó.
Nếu bạn dùng WooCommerce, hãy bảo đảm plugin cache loại trừ các trang động: giỏ hàng, thanh toán và tài khoản không bao giờ được cache. WP Super Cache, W3 Total Cache và LiteSpeed Cache đều có cài đặt cho việc này.
- Xóa toàn bộ cache — Xóa cache của plugin cache, cache của hosting (nếu có) và cache của CDN cùng lúc
- Tắt plugin xung đột — Không bao giờ chạy hai plugin cache toàn trang cùng lúc
- Loại trừ trang động — Trang giỏ hàng, thanh toán và đăng nhập phải được loại khỏi cache
- Kiểm tra cache cấp máy chủ — Nhà cung cấp hosting có thể thêm lớp cache riêng (Varnish, LiteSpeed...) xung đột với plugin của bạn
ERR_CACHE_MISS trên Android (ứng dụng và WebView)
Nếu bạn thấy lỗi trong một ứng dụng (trình duyệt tích hợp, màn hình đăng nhập hoặc thanh toán), hãy cập nhật Chrome và Android System WebView trong Play Store, rồi xóa bộ nhớ đệm của ứng dụng: Cài đặt → Ứng dụng → ứng dụng đó → Bộ nhớ và bộ nhớ đệm (Bộ nhớ trên một số điện thoại) → Xóa bộ nhớ đệm. Nếu lỗi vẫn còn, chính ứng dụng cần được sửa: hãy báo cho nhà phát triển của nó.
Nếu bạn là người làm ứng dụng: WebView cần quyền INTERNET. Thiếu nó, Android mặc định chặn việc tải qua mạng của WebView (giá trị mặc định của setBlockNetworkLoads khi đó là true), nên trang chỉ có thể đến từ bộ nhớ đệm và thất bại với net::ERR_CACHE_MISS.
<!-- AndroidManifest.xml, inside <manifest> -->
<uses-permission android:name="android.permission.INTERNET" />Sau đó kiểm tra chế độ cache: LOAD_CACHE_ONLY ("Don't use the network, load from the cache", tức là không dùng mạng, chỉ tải từ bộ nhớ đệm, thường được đặt cho chế độ ngoại tuyến) thất bại với ERR_CACHE_MISS với mọi thứ chưa được lưu, nên hãy dùng LOAD_DEFAULT. Với ứng dụng Flutter và React Native, quyền này cũng khai báo trong AndroidManifest.xml của dự án Android.
ERR_CACHE_MISS trên các trình duyệt khác
ERR_CACHE_MISS là mã của Chromium, nên Chrome, Edge, Brave, Opera và Vivaldi đều hiện cùng các trang. Các trình duyệt khác dừng lại trong cùng tình huống bằng lời của riêng họ.
| Trình duyệt | Hiển thị gì | Ghi chú |
|---|---|---|
| Chrome / Edge / Brave / Opera | Xác nhận việc Gửi lại Biểu mẫu, hoặc Không thể tải trang web này từ bộ nhớ đệm | Cùng trang và mã Chromium (ERR_CACHE_MISS) |
| Firefox | Tài liệu đã hết hạn | "Tài liệu được yêu cầu không có sẵn trong bộ đệm của Firefox." |
| Safari | Một hộp thoại trước khi gửi lại biểu mẫu | Hỏi có gửi lại biểu mẫu không |
Trang của Firefox có tiêu đề Tài liệu đã hết hạn ("Document Expired" trong tiếng Anh): "Tài liệu được yêu cầu không có sẵn trong bộ đệm của Firefox. Vì lí do bảo mật, Firefox không tự động tải lại các tài liệu nhạy cảm. Nhấn nút Thử Lại để yêu cầu tải lại tài liệu từ trang web." Cách sửa vẫn như vậy: chỉ tải lại khi việc gửi lại là an toàn, hoặc dùng PRG trên máy chủ.
Các lỗi cache liên quan trên Chrome
Các lỗi cache của Chrome có chung tiền tố ERR_CACHE_. Chỉ một vài lỗi thực sự dẫn đến trang lỗi; phần lớn (như -408, sai khác checksum) chỉ nằm trong nội bộ bộ nhớ đệm.
| Mã lỗi | Định nghĩa của Chromium | Nguyên nhân thường gặp |
|---|---|---|
| ERR_CACHE_MISS (-400) | Bộ nhớ đệm không có mục được yêu cầu | Quay lại trang kết quả của biểu mẫu; tải chỉ từ bộ nhớ đệm |
| ERR_CACHE_READ_FAILURE (-401) | Không thể đọc từ bộ nhớ đệm trên đĩa | Bộ nhớ đệm hỏng do sập máy hoặc tắt không đúng cách |
| ERR_CACHE_WRITE_FAILURE (-402) | Không thể ghi vào bộ nhớ đệm trên đĩa | Đầy ổ đĩa hoặc lỗi quyền truy cập |
ERR_CACHE_READ_FAILURE hiện cùng trang "Không thể tải trang web này từ bộ nhớ đệm": xóa bộ nhớ đệm (Cách 2) là cách sửa ở đó. Với ERR_CACHE_MISS, hãy bắt đầu bằng các cách sửa biểu mẫu ở trên. Gặp lỗi Chrome khác? Xem ERR_CONNECTION_REFUSED hoặc ERR_NAME_NOT_RESOLVED.
Kiểm tra HTTP header của bạn
Dùng công cụ Kiểm tra HTTP Header miễn phí của DNS Robot để xem header Cache-Control của máy chủ và các chỉ thị phản hồi khác ảnh hưởng đến bộ nhớ đệm của trình duyệt.
Nguồn
- net_error_list.h (CACHE_MISS -400), Chromium
- localized_error.cc (the error pages for ERR_CACHE_MISS), Chromium
- RFC 9110 §15.4.4: 303 See Other, IETF
- WebSettings (setBlockNetworkLoads, LOAD_CACHE_ONLY), Android Developers
Câu hỏi thường gặp
ERR_CACHE_MISS có nghĩa là gì?
Làm sao để sửa lỗi ERR_CACHE_MISS trên Chrome?
"Xác nhận việc Gửi lại Biểu mẫu" nghĩa là gì? Có nên chọn Tiếp tục không?
Tại sao ERR_CACHE_MISS xuất hiện khi nhấn nút Quay lại?
ERR_CACHE_MISS có phải virus hay vấn đề bảo mật không?
Làm sao sửa ERR_CACHE_MISS trên Android?
Nguyên nhân của net::ERR_CACHE_MISS trong Android WebView là gì?
Tại sao tôi thấy net::ERR_CACHE_MISS trong Chrome DevTools?
Nhà phát triển ngăn ERR_CACHE_MISS bằng cách nào?
ERR_CACHE_MISS có xảy ra trên Edge và các trình duyệt khác không?
Bài viết liên quan
Công cụ liên quan
Kiểm tra HTTP Header
Phân tích header phản hồi HTTP và chấm điểm header bảo mật
Kiểm tra Redirect
Kiểm tra chuyển hướng URL, chuỗi chuyển hướng và mã trạng thái HTTP cho SEO
Kiểm Tra Website Sập
Web sập với mọi người hay chỉ mình bạn? Kiểm tra bất kỳ website nào từ 11 địa điểm và từ kết nối của bạn, kèm ảnh chụp màn hình trực tiếp



