Trong quá trình sử dụng WordPress, chắc hẳn mọi người đã ít nhiều gặp các lỗi phát sinh tiềm ẩn. Một trong số đó là lỗi 404 not found wordpress – lỗi quen thuộc nhất với nhiều người.
Ảnh hưởng của lỗi này có thể kể đến là trải nghiệm người dùng. Thật khó chịu khi muốn truy cập vào bài viết thì hiện thông báo lỗi 404 Not Found – Trang liên kết không tồn tại. Và nhiều lần như thế, những khách hàng tiềm năng của bạn sẽ rời bỏ và có thể họ sẽ không bao giờ quay lại trang web của bạn.
Lỗi 404 not found cũng ảnh hưởng rất nhiều đến SEO. Là một SEOer thì họ không muốn điều này xảy ra và Google cũng thế.
Nhưng có một tin tốt là việc sửa lỗi này rất đơn giản, WordPress cũng hỗ trợ khá nhiều và có tài liệu chi tiết để sửa nó.
Vậy đâu là nguyên nhân gây ra lỗi 404 này? Làm thế nào để phát hiện và tìm cách khắc phục triệt nhất có thể?
Bài viết này sẽ giúp bạn:
- Hiểu hơn về lỗi 404 not found
- Tìm ra nguyên nhân và cách khắc phục lỗi 404
- Phát hiện được lỗi 404 một cách dễ dàng nhất
Lỗi 404 Not Found WordPress là gì?
Lỗi 404 error thường xuất hiện khi bạn đang cố truy cập vào một trang web mà trình duyệt không tìm thấy (không trả về kết quả).
Dữ liệu trình duyệt nhận lại có một thành phần là HTTP header, trong đó chứa các mã trạng thái HTTP khác nhau. Ứng với mỗi mã sẽ cho bạn biết điều gì đã xảy ra với request (truy vấn) từ trình duyệt.
Mỗi trình duyệt sẽ có thông báo lỗi khác nhau. Đơn cử như Firefox, lỗi 404 sẽ hiện là mã “404 Not Found” error”. Còn Chrome thông báo là “404. That’s an error.”
Tổng hợp các thông báo lỗi 404 Not Found:
- “Error 404”
- “404 Not Found”
- “HTTP Error 404”
- “Not Found”
- “Page Not Found”
- “The requested URL was not found on this server.”
- “The page cannot be found”
- “We can’t find the page you’re looking for.”
- “The requested URL /~ was not found on this server. That’s all we know.
Tuy nhiên, những lỗi này thường khá mơ hồ, và các website cũng có thể tạo ra trang 404 riêng. Mặc dù việc này thật sự không cần thiết, nhưng nhờ thế, khách truy cập biết rằng website này vẫn đang hoạt động, chỉ có trang hiện tại không trả về kết quả mà thôi (không truy cập được).
Nguyên nhân gây lỗi 404 Not Found WordPress
Để bắt bệnh ta thường phải biết bệnh phát sinh do đâu.
Nguyên nhân gây ra lỗi 404 not found WordPress có thể kể đến là:
- Điền sai URL (sai cấu trúc permalinks): Đây là nguyên nhân thường gặp nhất khi bạn nhập sai thông tin URL.
- Caching gặp lỗi: Các trình duyệt hiện nay đều lưu cache của website mà bạn đang truy cập, kể cả lỗi 404 not found. Khi website hoạt động lại bình thường, nhưng trình duyệt của bạn vẫn load lại cache cũ, điều này dẫn đến lỗi 404.
- Lỗi thiết lập DNS: Lỗi 404 wordpress xảy ra khi mà tên miền website của bạn chưa được quảng bá đầy đủ và thiết lập DNS không đúng → lỗi 404 phát sinh.
- Vấn đề tương thích của WordPress: Trong một số trường hợp, vấn đề không tương thích của Theme hoặc Plugin với phiên bản WordPress hiện tại → URL và Permalink của website WordPress bị ảnh hưởng → nguyên nhân gây ra lỗi 404 not found trong wordpress.
Bạn nên yên tâm vì error 404 không chỉ ảnh hưởng trên WordPress mà còn xuất hiện trên mọi nền tảng website khác mà bạn đang dùng.
Những ảnh hưởng của lỗi 404
Việc website của bạn có quá nhiều lỗi 404 là không tốt chút nào. Nhiều thứ có thể tệ hơn những gì bạn nghĩ.
Một số ảnh hưởng của lỗi 404 not found wordpress có thể là:
1. Ảnh hưởng xấu đến SEO
Tùy vào nguyên gây ra lỗi 404 mà chúng có thật sự ảnh hưởng đến SEO hay không?
Nếu người dùng tự nhập sai đường dẫn (URL) của một bài viết/ trang nào đó thì lỗi 404 này không ảnh hưởng đến SEO.
Nhưng ngược lại, trang web bạn vẫn tồn tại URL đó nhưng người dùng không truy cập được (không trả về kết quả) – đây gọi là liên kết gãy → Khi các con bọ của công cụ tìm kiếm quét website của bạn mà không có bất cứ dữ liệu gì, điều này ảnh hưởng rất xấu đến SEO.
Ngoài ra, nếu nguyên nhân đến từ cấu hình sai permalinks → Google không thể thu thập được dữ liệu nào trên website của bạn thì bạn nên khắc phục lỗi 404 Not Found càng sớm càng tốt.
2. Hiệu suất của website
Hiệu suất website sẽ bị ảnh hưởng rất nhiều khi xuất hiện lỗi 404 Not Found WordPress, vì các phản hồi này đều được lưu trong bộ nhớ đệm của trình duyệt. Nếu bạn mua traffic từ các Network như Google, Facebook, Zalo, v.v thì đều này càng tệ hơn.
Càng lưu quá nhiều lỗi 404 thì nó sẽ rất ngốn tài nguyên web. Giải pháp hay là tạo một trang 404 để tránh việc truy vấn vào cơ sở dữ liệu.
3. Trải nghiệm của người dùng
Bạn nghĩ gì khi truy cập vào một trang 404 (không có thông tin gì) để đọc? Điều đó thật tệ đúng không nào?
Việc lập lại quá nhiều vấn đề trên sẽ khiến người dùng từ bỏ website của bạn. Họ chọn giải pháp là tìm thông tin ở những website của đối thủ để đọc.
Một khi trải nghiệm người dùng không tốt cũng ảnh hưởng đến SEO → thật sự điều này không tốt chút nào. Việc tìm ra giải pháp khắc phục lỗi 404 sẽ giúp bạn cải thiện rất nhiều trong mắt Google và cả người dùng.
Nếu bạn đang dùng WordPress thì có chút an tâm rồi đấy – vì WordPress có nhiều cách để giúp bạn sửa lỗi này. Hãy tiếp tục cùng Đình Long Plus tìm hiểu xem cần phải làm gì khi website WordPress của bạn dính lỗi 404 nhé.
Trước khi sửa lỗi 404 Not Found wordpress cần làm gì?
Ở phần này, trước khi sử lỗi 404 not found wordpress, bạn cần:
- Sửa một số files backend của WordPress hoặc có thể backup lại website
- Nếu không truy cập được vào Dashboard của WordPress, bạn sẽ phải backup website bằng Control Panel của nhà cung cấp Hosting/VPS (Chắc chắn rằng bạn đã tải file backup về an toàn)
- Tiếp đến, hãy thử kết nối lại trang web và chờ khoảng 10 phút
- Dùng trình duyệt khác truy cập lại xem sao, có còn gặp lỗi 404 không đăng nhập được vào wp-admin nữa không?
- Dùng File Manager hoặc FTP Client để kết nối đến Hosting. Nếu bạn kết nối bằng FTP Client thì nên dùng phần mềm FileZilla – vì đây là phần mềm mã nguồn mở có đầy đủ tính năng bạn cần.
Công đoạn tiếp theo là sửa lỗi. Việc sửa lỗi 404 như thế nào sẽ được nói tiếp ở phần sau.
Khắc phục lỗi 404 Not Found WordPress
Có thể lỗi WordPress này sẽ tự biến mất vì có thể nguyên nhân đến từ vấn đề kết nối với tài khoản hosting của bạn. Cố gắng tải lại trang xem nó có tự biến mất hay không, trước khi bạn đi sâu vào nghiên cứu sửa lỗi.
Dưới đây là một số cách dùng để khắc phục lỗi 404 Not Found trong WordPress. Tùy thuộc vào lỗi xảy ra như thế nào, ở diện rộng hay cục bộ mà bạn chọn giải pháp phù hợp.
#1. Cài lại WordPress Permalinks
Như đã nói ở phần trên, đây là nguyên nhân gây ra lỗi 404 WordPress phổ biến nhất, vì Permalinks WordPress có vấn đề.
Trong WordPress, bạn sẽ được cung cấp nhiều lựa chọn để cấu hình và định dạng link một bài post/page. Ví dụ, cấu hình Permalinks theo dạng link ngày tháng năm + postname làm URL:
Có 2 cách để sửa Permalinks trong WordPress:
- Cách 1: Sửa trên Dashboard WordPress (trang admin của WordPress)
- Cách 2: Sửa thông qua FTP
Để sửa permalink từ trong trang admin của WordPress, bạn truy cập Settings → Permalinks. Vì bạn chỉ thay đổi nó tạm thời nhằm thiết lập lại cấu trúc permalink, nên bạn phải note lại cấu hình trang WordPress đang sử dụng.
Sau khi chọn phương pháp Plain trong phần Common Settings, đừng quên nhấn nút Save để lưu nha.
Sau đó tải lại trang (hoặc nhấn phím F5). Quay lại trang cấu hình WordPress permalink, chọn loại permalink cũ mà đã ghi chú (note) trước đó, rồi bấm Save lại lần nữa.
Bạn thử mở lại website lên, rồi xem lỗi 404 đã biến mất chưa? Nếu mất thì quá tốt rồi, như vậy bạn không mất quá nhiều thời gian để sửa lỗi!
Vì không truy cập vào Dashboard WP (trang admin), nên bạn phải sửa thông qua FTP, sẽ được hướng dẫn ở phần tiếp theo.
#2. Khôi phục lại file .htaccess
File .htaccess giúp kiểm soát cách mà WordPress tương tác với server, và còn là cách để nó tạo ra URLs cho trang web WordPress. Mọi thực hiện thay đổi cấu trúc permalink của WordPress đều được lưu dưới file .htaccess này.
Truy cập vào website thông qua FTP hoặc File Manager, rồi chuyển tới thư mục root của WordPress. Thường bản cài đặt WP nằm ở thư mục chính như: public_html hay www, hay tên của website:
Mở file .htaccess và thay đổi như hướng dẫn bên dưới:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ – [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
Có thể bạn sẽ không hiểu nội dung trong file này là gì, nhưng đừng lo vì đây là file .htaccess WordPress mặc định, không có tùy biến nào hết nên nó sẽ xóa hết mọi thay đổi trước đó đã có cho cấu trúc permalink.
Lưu lại thay đổi, lúc này FileZilla sẽ hỏi bạn có muốn ghi đè lên file .htaccess hay không? Đừng suy nghĩ gì thêm mà hãy chọn đồng ý ngay.
Thế là bạn đã reset được WordPress permalinks thủ công rồi, cũng không mấy khó khăn nhỉ?.
Check lại lỗi 404 xem đã mất chưa bằng cách truy cập lại trang WordPress lần nữa. Khi đã không còn lỗi 404 nữa, bạn tiến hành nhập lại cấu trúc permalinks cũ trước đó đã note (nhớ vào Settings → Permalinks để chỉnh bằng tay nha).
#3. Vô hiệu hóa theme và plugin WordPress
Nếu đã thử 2 cách trên mà vẫn gặp lỗi 404 not found wordpress, hãy thử vô hiệu themes và plugins của WordPress – đây được xem là cách tốt nhất.
Có 2 cách để vô hiệu hóa, tùy vào cách bạn có vào được trang admin hay không?
- Cách 1: Truy cập vào themes và plugins của WordPress để vô hiệu hóa
- Cách 2: Vô hiệu themes và plugins của WordPress bằng FTP
Ở cách 1, chuyển tới mục Plugins → All Plugins và thực hiện theo cách sau:
- Nhấn vào Deactivate trên tên plugin
- Load lại trang xem có còn lỗi 404 không
- Nếu vẫn còn, tức plugin này không bị xung đột với WP gây ra lỗi 404 → active lại plugin đã bị vô hiệu.
- Lặp lại quá trình trên với những plugin tiếp theo
Hướng đi khác mà bạn có thể áp dụng là vô hiệu hóa toàn bộ plugin xem sao. Sau đó active lại từng plugin để đối chứng, xem có gặp lỗi 404 hay không?
Nếu đã thử hết mà không có một plugin nào gây ra 404 error, thì nguyên nhân có thể là theme WordPress.
Vào Appearance → Themes và chọn theme mặc định của WP để active lên.
Nếu không còn xuất hiện lỗi 404, tức theme hiện tại bạn đang dùng có vấn đề. Nếu được, hãy thử tìm bản cập nhật mới nhất hoặc sửa theme, hoặc tệ hơn là phải chuyển sang theme mới.
Ở cách 2, vì không vào được trang admin WordPress nên bạn phải vô hiệu hóa thủ công qua FTP.
Truy cập vào website thông qua FileZilla, tìm đến thư mục public_html/wp-content, tìm 2 thư mục có tên là plugins và themes.
Nhấp chuột phải vào plugin cần đổi, chọn Rename. Thay đổi tên khác tên mặc định plugin trước đó là được. Ví dụ: ten-plugin_disable.
Mỗi lần đổi tên bạn thử load lại trang xem lỗi 404 có mất hay không? Nếu không lần lượt chuyển sang plugin tiếp theo.
Nếu plugin không có vấn đề gì gây ra lỗi lỗi 404 not found, bạn thử chuyển đến thư mục wp-content → themes, tiến hành đổi tên như plugin ở trên.
Vì WordPress cần ít nhất 1 theme đang active, do đó việc bạn vô hiệu theme đang hiện hành thì WordPress sẽ tự lấy theme mặc định làm theme chính. Lúc này, giao diện website của bạn sẽ bị ảnh hưởng.
Nhưng đừng lo quá nhé, vì việc này chỉ tạm thời mà thôi.
Nếu lỗi mất đi, cách tốt nhất là bạn nên tìm theme mới để cài lại. Hoặc nếu cài lại theme cũ thì bạn phải sửa được lỗi 404 hoặc có thể tìm bản cập nhật mới nhất của theme để cài lại.
#4. Chuyển hướng 301 URL
Nếu lỗi 404 Not Found chỉ xảy ra với một số bài viết/trang, nguyên nhân có thể là slug URL của bài viết đã bị thay đổi. Khi người dùng cố gắng truy cập vào bài viết cũ, thay vì nội dung tài nguyên mà họ mong muốn thì họ sẽ nhìn thấy 404 Error.
Hướng giải quyết tốt nhất cho vấn đề này là chuyển hướng người dùng từ vị trí cũ đến vị trí mới. Với cách này, độc giả sẽ nhận được nội dung mà họ mong muốn mà không phải là lỗi là 404. Cách này cũng rất thân thiện với SEO.
Mặc định WordPress sẽ cố gắng chuyển hướng nội dung đã sửa đổi hoặc xóa chúng. Nhưng thực sự điều này không phải lúc nào cũng hiệu quả, vì thế đừng quá phụ thuộc vào tính năng này.
Cài đặt và kích hoạt plugin Redirection là cách thực hiện dễ dàng và nhanh nhất cho bạn. Nếu bạn chưa biết cài đặt plugin WordPress, có thể đọc bài viết này tại đây.
Tìm đến phần Add New Redirection như hình trên, rồi thiết lập như sau:
- Source URL: Nhập URL bị lỗi 404 Not Found.
- Target URL: Nhập URL mới của nội dung bài viết
Sau đó nhấp vào nút Add Redirect để hoàn tất.
Tạo trang thông báo lỗi 404
Bạn không nào kiểm soát toàn bộ lỗi 404 trên website của mình, vì một website nhỏ có thể xảy ra hàng ngàn lỗi 404. Do đó, cách hay nhất mà nhiều blogger/admin hay làm là tạo ra trang thông báo lỗi 404 not found.
Khi khách nhập sai địa chỉ URL hoặc truy cập vào một bài post/page không tồn tại, mọi người sẽ thông báo về lỗi 404 Not Found.
Bạn có thể sử dụng plugin 404page để tạo các trang thông báo lỗi. Plugin ngày có thể tạo ra một trang thông báo lỗi tùy chỉnh thân thiện với người dùng, bao gồm các tính năng như: hộp tìm kiếm, thông tin liên hệ, liên kết khác…
Sử dụng các tính năng trên một cách hợp lý vì không phải cái nào cần thiết, quan trọng thì mới đưa vào, mà vì còn phải đảm bảo đến hiệu suất cho website.
Cách phát hiện lỗi 404 Not Found
Phòng bệnh hơn chữa bệnh.
Chủ động đề phòng và phát hiện kịp thời các yếu tố gây ra lỗi 404 Not Found trong tương lai rất quan trọng. Điều này có thể giúp bạn:
- Tìm kiếm các liên kết bị gãy (hỏng): để sửa các liên kết đó, hoặc chuyển hướng đến liên kết mới tốt hơn.
- Phát hiện ra các trang gặp sự cố khi Google thu thập dữ liệu website: tìm hiểu nguyên nhân và thiết lập chuyển hướng nếu cần.
Một số cách có thể dùng đến là:
#1 – Google Analytics
Ngoài chức năng thống kê liên quan đến traffic thì Google Analytics còn giúp bạn thiết lập báo cáo tùy chỉnh, từ đó có thể theo dõi lỗi 404 từ các liên kết bên ngoài.
Thực hiện: truy cập menu Customization (Tùy chỉnh) → Custom Reports (Báo cáo tùy chỉnh) và nhấp chọn New Custom Report (+Báo cáo tùy chỉnh mới).
Tùy chọn kiểu báo cáo:
- Kiểu báo cáo: Flat table
- Chọn thứ nguyên là Page, Full Referrer và Page Title
- Nhóm số liệu: Unique Pageviews
- Thêm bộ lọc, bao gồm: giá trị (entrance) cho thứ nguyên là Previous Page Path
- Thêm bộ lọc Regex: cho tiêu đề trang nhằm xác định lỗi 404
Khi bạn lưu lại báo cáo và mở chúng, một số cột sẽ có thông tin như sau:
- Page: bao gồm các URL gây ra lỗi 404
- Full referrer: Trang trên website khác (liên kết bên ngoài) liên kết đến trang URL bị lỗi của bạn
- Page title: Tiêu đề trang 404
- Unique Pageviews: Phiên làm việc phát sinh lỗi (Số lượt xem duy nhất)
#2 – WordPress plugin
Phần trên mình có giới thiệu đến bạn plugin tên là Redirection. Ngoài chức năng chuyển hướng 301 URL, thì plugin này còn giúp bạn theo dõi lỗi 404 Not Found từ WordPress Dashboard.
Còn chần gì mà không thử ngay!
#3 – Google Search Console
Google Search Console cũng là một cách rất hữu ích để bạn theo dõi lỗi 404 trên website của mình. Để sử dụng được cách này, bạn phải xác thực website với Google Search Console.
Truy cập menu Thu thập dữ liệu → Lỗi Thu thập dữ liệu để xem danh sách các lỗi 404 mà Google quét được trên website của bạn.
Vì các con bọ của Google thường xuyên thu thập dữ liệu trên website của bạn nên tại sao chúng ta không tận dụng dữ liệu mà Google đã cung cấp? Vừa tiện lợi và đơn giản mà không ảnh hưởng đến hiệu suất của website.
Lời kết
Thật không may là lỗi 404 Not Found WordPress có thể sẽ phát sinh trên blog/website của bạn, dù bạn không chủ ý tạo ra nó.
Khi website của bạn ngày càng lớn, việc có nhiều lỗi 404 Not Found hơn là điều dễ hiểu. Lúc này, bạn cần có kế hoạch để theo dõi và khắc phục lỗi này càng sớm càng tốt.
Error 404 tuy có thể là một lỗi đơn giản nhưng ảnh hưởng rất nhiều đến website của bạn.
Nó sẽ ảnh hưởng đến trải nghiệm của người dùng, và có thể là những khách hàng tiềm năng của bạn. Không những thế, nó làm ảnh hưởng xấu đến SEO, đây thật sự là điều không tốt chút nào trong thời đại tìm kiếm thông tin ngày một nhiều như hiện nay.
May mắn thay, có nhiều cách để bạn sửa lỗi 404 này trên website WordPress của mình. Bạn có thể vô hiệu hóa themes và plugins, hoặc cài đặt lại permalinks chuẩn, hoặc có thể là khôi phục lại file .htaccess mặc định,…
Bài này được viết trên trải nghiệm những gì mình có được. Vì thế, nếu bạn có thủ thuật hay để sửa lỗi WordPress 404 error thì để lại bình luận bên dưới nhé!
Hoặc bạn còn thắc mắc những gì chưa hiểu, có thể liên hệ qua fanpage này để mình hỗ trợ.