- shares
- Facebook Messenger
- Gmail
- Viber
- Skype
Các lỗi thường gặp của WordPress và cách khắc phục
Có bao giờ bạn đã gặp phải tình huống sau khi bạn cài và kích hoạt một theme/plugin WordPress mới nào đó thì blog trắng tinh. Hoặc đang cập nhật WordPress thì mất kết nối mạng, khi kết nối lại thì WordPress thông báo đang trong chế độ bảo trì (maintenance mode) hay thông báo lỗi kết nối đến cơ sở dữ liệu (Error Establishing A Database Connection).
Nếu đang tìm kiếm cách giải quyết trong những trường hợp như vậy thì bạn nên theo dõi kĩ bài viết này. Bài này sẽ đề cập đến những lỗi thường gặp nhất khi làm việc với WordPress và xử lý (gỡ lỗi) khi gặp phải chúng. Nào chúng ta hãy bắt đầu tìm hiểu nhé:
1. 500 Internal Server Error
Vấn đề
Website của bạn đang chạy trơn tru thì bỗng nhiên “đứt gánh giữa đường” với một thông báo lỗi dài dằng dặc:
Lí do
Nguyên nhân thường gặp nhất của lỗi “500 Internal Server Error” là do tập tin .htaccess gây ra. Nguyên nhân khác có thể do xung đột giữa các plugin hay do quá trình cài đặt WordPress.
Thỉnh thoảng, việc giới hạn bộ nhớ PHP cũng dẫn đến 500 Internal Server Error. Cách đơn giản nhất để tìm nơi gây lỗi là kiểm tra error_log (nhật kí lỗi) của website. Ngoài ra, bạn có thể kích hoạt WP_DEBUG rồi kiểm tra nhật kí lỗi. Mở file wp-config.php và tìm dòng này:
define(‘WP_DEBUG’, false);
Thay đổi dòng này thành:
define(‘WP_DEBUG’, true); //Kích hoạt chế độ sửa lỗi
define(‘WP_DEBUG_LOG’, true); //Lưu lỗi vào file debug.log trong thư mục wp-content
define(‘WP_DEBUG_DISPLAY’, false); //Không hiển thị lỗi ra màn hình
Sửa lỗi
Vì .htaccess là nguyên nhân hàng đầu nên ta giải quyết file này trước tiên. Bạn hãy cài đặt và sử dụng một chương trình FTP truy cập đến thư mục cài đặt WordPress, tìm file .htaccess rồi đổi tên nó thành cài gì đó, .htaccess_old chẳng hạn.
Bây giờ thử tải lại website, nếu không còn gặp lỗi thì bạn đã thành công. Nhưng nhớ truy cập vào khu vực quản trị WordPress, truy cập Settings–>Permalinks rồi bấm nút Save changes để tạo một file .htacess mới nếu không bạn sẽ gặp tiếp lỗi 404 đó.
Nếu chưa được, bạn hãy truy cập vào thư mục wp-content/plugins rồi đổi tên từng thư mục plugin để xem cái nào gây lỗi. Ngoài ra thử tăng bộ nhớ PHP để đảm bào việc thiếu bộ nhớ không phải là nguyên nhân gây lỗi.
Nếu vẫn thất bại thì bạn phải upload lại thư mục wp-admin và wp-includes.
2. Màn hình trắng (White Screen of Death)
Vấn đề
Như cái tên đã đề cập, khi truy cập vào website, bạn sẽ không thấy gì ngoài một màu trắng.
Lí do
Có rất nhiều nguyên nhân gây ra lỗi WSOD. Phổ biến là việc các plugin hay theme không tương thích. Không tương thích có nhiều nghĩa: một plugin xung đột với một hay nhiều plugin khác, hoặc không chạy với phiên bản hiện tại của WordPress. Tương tự như vậy với các theme.
Sửa lỗi
Truy cập đến thư mục cài đặt WordPress của bạn bằng một chương trình FTP, đến thư mục/wp-content. Tìm thư mục “plugins” rồi đổi tên thành “plugins_old”. Tạo một thư mục mới có tên là “plugins”.
Việc này sẽ ngưng kích hoạt toàn bộ plugin. Nếu website trở lại bình thường thì plugin của bạn đã gây ra lỗi. Giờ tiến hành chép từng thư mục plugin trong thư mục “plugins_old” vào thư mục “plugins” rồi kích hoạt để xem plugin nào gây lỗi.
Đối với theme (template), bạn truy cập đến thư mục wp-content/themesrồi đổi tên theme bạn đang sử dụng. Truy cập vào phần quản lý WordPress, Appearane > Themes. Giao diện website của bạn sẽ trở về giao diện mặc định của WordPress.
3. Lỗi chế độ bảo trì (Maintenance Mode)
Vấn đề
Website hiện thông báo đang trong chế độ bảo trì.
Sửa lỗi
Một lần nữa bạn truy cập vào thư mục cài đặt WordPress, hãy tìm và xóa file .maintenance.
4. Lỗi mất kết nối đến cơ sở dữ liệu
Vấn đề
Website hiện thông báo “Lỗi kết nối cơ sở dữ liệu”.
Lí do
Nguyên nhân trực tiếp có thể là do cơ sở dữ liệu của bạn đang mất kết nối thật hoặc cấu hình của file wp-config.php không chính xác.
Hầu hết lỗi kết nối đến cơ sở dữ liệu chỉ có thể giải quyết bởi nhà cung cấp dịch vụ. Một trang web bị hack cũng dẫn đến lỗi này.
Sửa lỗi
Đầu tiên, bạn mở file wp-config.php trong thư mục gốc cài đặt WordPress. Kiểm tra những thông tin bạn nhập để kết nối đến cơ sở dữ liệu là chính xác (database name, username, password và database host). Nếu không có gì sai sót thì chỉ có cách liên hệ với nhà cung cấp host để họ sửa lỗi.
5. Lỗi kết nối hết thời gian (Connection Timed Out)
Vấn đề
Thông báo này xuất hiện khi máy chủ bị quá tải hoặc do cấu hình máy chủ có vấn đề.
Lí do
Điều này thường xảy ra khi máy chủ quá tải và không thế hoàn thành yêu cầu của trình duyệt.
Sửa lỗi
Xóa bớt các plugin của bạn. Đặc biệt là những plugin gửi nhiều câu lệnh truy vấn lên máy chủ. Bạn cũng có thể tăng bộ nhớ PHP bằng cách mở file wp-config.php và thêm dòng này vào
define(‘WP_MEMORY_LIMIT’, ’64M’);
Việc này sẽ tăng bộ nhớ giới hạn lên 64 MB. Tuy nhiên với một số web host bạn có thể không được phép tăng bộ nhớ giới hạn quá một mức nhất định. Tốt nhất là liên hệ với nhà cung cấp host hoặc thay host khác dễ thở hơn.
6. Error 145
Vấn đề
Error 145 thông báo cho bạn biết cơ sở dữ liệu của WordPress đã bị lỗi.
Sửa lỗi
Bạn hãy đăng nhập vào phpMyAdmin, lựa chọn cơ sở dữ liệu của WordPress. Chọn những bảng bạn muốn sửa lỗi rồi nhấn “Repair Table” từ thanh thả bên phải ở cuối bảng. Chú ý sao lưu cơ sở dữ liệu trước khi thực hiện.
7. Error 28
Vấn đề
Error 28 là một lỗi của MySQL và không liên quan đến WordPress. Ngay cả Drupal, Joomla! và các CMS khác cũng có thể bị lỗi này.
Lí do
Error 28 xảy ra khi bộ nhớ cache trên máy chủ của bạn đã đầy hoặc có quá nhiều tập tin trong thư mục /tmp.
Sửa lỗi
Nếu có thể, bạn hãy dọn sách thư mục /tmp (ngang hàng với thư mục /public_html). Đồng thời liên hệ với nhà cung cấp host để giải quyết những vấn đề liên quan đến cache.
8. Warning: Cannot Modify Header Information – Headers Already Sent
Vấn đề
Có thể bạn đã từng đối mặt với dòng lỗi này “Warning: Cannot modify header information — headers already sent by (output started at /path-to-something-directory/some-config-file:xyz )”.
Lí do
Nguyên nhân gây ra thông báo này là do tồn tại các khoảng trắng trong tập tin được WordPress thông báo lỗi.
Sửa lỗi
Tải file gây ra lỗi về máy và mở nó lên. Chú ý xóa bỏ những khoảng trắng trước thẻ <?phpvà sau thẻ ?>. Và giữa “?” với “<” hoặc “>” cũng không được có khoảng trống.
9. Warning: File_Get_Contents
Vấn đề
Lỗi có dạng như thế này “Warning: file_get_contents (http://www.url.com/url) [function:file-get-contents]: failed to open stream on line xyz”
Lí do
Lỗi như vậy là do máy chủ được thiết lập bảo mật ở mức độ cao nhằm ngăn chặn việc lạm dụng tài nguyên máy chủ, …
Sửa lỗi
Nếu có thể sửa file php.ini. Mở file đó lên và tìm dòng
allow_url_fopen = Off
Thay “Off” thành “On”
allow_url_fopen = On
Nếu vấn đề chưa được giải quyết thì lại phải liên hệ với nhà cung cấp host yêu cầu họ mở allow_url_fopen lên. Ngoài ra nếu lỗi này có thêm một thông báo nữa là “failed to open stream: no such file or directory in…” thì có nghĩa không tồn tại file trong thông báo hoặc không có quyền mở file đó. Hãy tìm theo đường dẫn trong thông báo để xem file đó có mặt trong không và kiểm tra chmod.
10. Lỗi mà bạn gặp phải ^^
Thông thường lỗi này thì bạn hãy để lại dòng Comment dưới đây, cộng đồng WordPress và Blog Hoàng Web sẽ trợ giúp bạn.
Xin cám ơn các bạn đã đọc bài viết này !
Hãy cho mình biết suy nghĩ của bạn trong phần bình luận bên dưới bài viết này. Hãy theo dõi kênh chia sẻ kiến thức WordPress của Hoangweb trên Twitter và Facebook
- shares
- Facebook Messenger
- Gmail
- Viber
- Skype