Khi sử dụng Internet, việc gặp phải tình trạng không thể truy cập vào một trang web nào đó là điều mà người dùng khó tránh khỏi. Màn hình máy tính sẽ hiển thị thông báo lỗi với nội dung “500 Internal Server Error”. Đây là một trong những lỗi phổ biến mà nhiều website gặp phải. Vậy lỗi 500 Internal Server Error là gì? Nguyên nhân và hướng dẫn chi tiết cách tự khắc phục sẽ được Vietnix giới thiệu trong bài viết dưới đây.
Lỗi 500 Internal Server Error là gì?
Lỗi 500 Internal Server Error là một lỗi với mã trạng thái HTTP 500. Lỗi này xuất hiện có thể là do một sự cố nào đó trên website mà bạn đang truy cập. Chẳng hạn như: Quá nhiều người truy cập cùng lúc, lỗi file .htaccess,… hay khi server máy chủ của trang web gặp trục trặc không hiển thị thông tin hay bất cứ nội dung gì. Thay vì hiện ra giao diện của website như bình thưởng, máy chủ sẽ gửi trang lỗi 500 đến trình duyệt bạn truy cập và hiển thị nó trên màn hình.
Tùy thuộc vào thiết lập của website mà các lỗi 500 Internal Server Error được hiển thị dưới nhiều hình thức khác nhau như:
- 500 Internal Server Error.
- 500.
- HTTP Error 500.
- 500 Error.
- 500. That’s an error.
- Temporary Error (500),…
Ngoài ra, một số website còn sử dụng những hình ảnh dễ thương, hài hước để thể hiện các lỗi này nhằm giảm bớt những khó chịu cho người dùng khi website đang xảy ra sự cố lỗi.
Lỗi này là một trong những lỗi thường xuyên xảy ra đối với các website được xây dựng trên nền tảng WordPress khiến khách hàng không thể truy cập và gây thiệt hại cho website.
Nguyên nhân gây ra lỗi 500 Internal Server Error?
Đa phần khi một website nào đó xảy ra lỗi thì các vấn đề liên quan đến tình trạng website bị lỗi đều sẽ được hiển thị trên màn hình. Tuy nhiên, lỗi này thường chung chung và khó xác định nguyên nhân nên trình duyệt không thể hiển thị lỗi này xuất phát từ đâu.
Về cơ bản, một số nguyên nhân thông thường gây ra lỗi 500 Internal Server Error là do:
- File .htaccess bị lỗi.
- Xung đột giữa các plugin.
- Giới hạn dung lượng bộ nhớ PHP.
- Các phần mềm máy chủ web như: Apache, PHP,… bị lỗi.
- Máy chủ bị quá tải do nhiều người cùng truy cập cùng một thời điểm.
Mỗi nguyên nhân gây ra tình trạng lỗi sẽ có những cách khắc phục tương ứng khác nhau. Để đảm bảo website và các dữ liệu cần thiết không bị mất bạn nên tiến hành sao lưu dữ liệu trước khi khắc phục lỗi.
Hướng dẫn khắc phục lỗi 500 Internal Server Error
Dưới đây là một số cách khắc phục lỗi 500 Internal Server Error thường được áp dụng:
Tải lại hoặc refresh trang
Lỗi 500 Internal Server Error chỉ là một trong những lỗi tạm thời trên Web Server. Vì vậy bạn có thể tải lại trang hoặc refresh trang web (sử dụng phím F5) để khắc phục tình trạng lỗi này và load lại trang web bạn muốn truy cập.
Xóa bộ nhớ cache trên trình duyệt
Nguyên nhân gây ra lỗi 500 có thể là do bộ nhớ cache của trang web bạn truy cập đang gặp sự cố. Với nguyên nhân này, bạn có thể khắc phục bằng cách xóa bộ nhớ cache trên trình duyệt bạn đang sử dụng.
Xóa cookies trên trình duyệt
Bạn cũng có thể khắc phục lỗi 500 Internal Server Error bằng cách xóa cookies trên trình duyệt. Sau khi xóa hết cookies, bạn hãy tiến hành khởi động lại trình duyệt, truy cập vào website và tải lại trang một lần nữa.
Hướng dẫn sửa lỗi 500 Internal Server Error trên WordPress
Dưới đây, Vietnix sẽ hướng dẫn một số cách để sửa lỗi 500 Internal Server Error trên WordPress mà bạn có thể tham khảo như:
Kiểm tra tình trạng lỗi của các file .htaccess
Khi các file. htaccess bị lỗi thì trang web sẽ xảy ra tình trạng lỗi 500 Internal Server Error. Bạn chỉ cần thực hiện theo các bước dưới đây để khắc phục:
- Bước 1: Thông qua FTP để truy cập vào thư mục gốc code website. Ở thư mục này có chứa các file bao gồm: wp-content, wp-includes,… trong số đó, bạn cần tìm ra các file .htaccess.
- Bước 2: Thực hiện đổi tên file thành một tên khác để vô hiệu hóa file .htaccess.
- Bước 3: Tạo một file .htaccess mới và tải lên đoạn code mặc định của WordPress với nội dung như sau:
# BEGIN WordPress
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress
- Bước 4: Sau khi hoàn tất bạn lưu lại file vừa tạo.
Sau đó, mở lại trang web trên trình duyệt để kiểm tra. Trường hợp vẫn còn lỗi bạn có thể thực hiện một số cách khác để khắc phục.
Vô hiệu hóa plugin
Đối với cách này, bạn cần kiểm tra theme và plugins. Nếu lỗi này xảy ra do gặp lỗi cài đặt hoặc cập nhật plugin bạn cần tiến hành vô hiệu hóa plugins qua WordPress Dashboard như sau:
- Bước 1: Đăng nhập vào WordPress Dashboard (trang admin trong WordPress).
- Bước 2: Chọn Plugins > Chọn Installed Plugins.
- Bước 3: Thực hiện vô hiệu hóa plugin gây lỗi.
- Bước 4: Tải lại trang web để xem các lỗi 500 đã được sửa hết chưa.
Nếu chưa được khắc phục, tiến hành vô hiệu hóa các plugin khác và lặp lại quá trình cho đến khi các plugin bị vô hiệu hoàn toàn hay cho đến khi website hoạt động bình thường. Sau khi xác định được plugin gây ra lỗi, hãy xóa và cài đặt lại để giải quyết tình trạng lỗi.
Ngoài ra, bạn cũng có thể vô hiệu WordPress plugins thông qua File Manager hoặc FTP bằng cách sau:
- Bước 1: Truy cập thư mục gốc của WordPress sẽ thư mục wp-content/plugins.
- Bước 2: Tìm kiếm và xác định plugin gây lỗi, sau đó đổi tên thư mục để khắc phục tình trạng lỗi.
Ví dụ: Đối với các plugin đã bị vô hiệu bạn có thể đổi tên và thêm .disable vào cuối. Để xóa hoàn toàn bạn chỉ cần xóa toàn bộ thư mục.
Trường hợp lỗi xảy ra do vấn để ở theme, cần đổi theme thông qua WordPress Dashboard:
- Bước 1: Truy cập vào mục Appearance > Chọn Themes.
- Bước 2: Chọn 1 theme bất kỳ và nhấn vào nút Active để sử dụng.
- Bước 3: Xác nhận với link điều hướng đến website của bạn.
Tăng giới hạn bộ nhớ PHP
Đôi khi bộ nhớ PHP không đủ sẽ dẫn đến việc website không tải được các plugin, nội dung,… và làm gây ra lỗi 500 Internal Server Error. Để giải quyết bạn chỉ cần tăng giới hạn của bộ nhớ PHP trong WordPress bằng cách:
- Bước 1: Tạo một tập tin văn bản trống với tên gọi php.ini.
- Bước 2: Dán mã: memory = 64MB vào tệp tin.
- Bước 3: Lưu lại tệp tin.
- Bước 4: Tải file vào thư mục wp-admin của bạn bằng FTP.
Thay đổi phiên bản PHP
PHP không tương thích với plugins và scripts cũng là một trong số các nguyên nhân nhân gây ra lỗi này, bạn cần thực hiện thay đổi phiên bản PHP như sau:
Truy cập vào hosting control panel > vào mục PHP Configuration. Trong một loạt các phiên bản PHP hiện ra, hãy chọn một phiên bản khác với phiên bản đang sử dụng > Nhấn chọn nút Save.
Sau khi hoàn tất, bạn nhấn tải lại trang web để xem lỗi đã được khắc phục chưa. Nếu chưa, bạn đổi PHP về version ban đầu và tiếp tục thử lần lượt từng phiên bản cho đến khi lỗi được sửa.
Kích hoạt error display
Các nguyên nhân gây ra lỗi 500 Internal Server Error thường khó xác nhận. Nếu thử những cách trên vẫn chưa khắc phục được, bạn có thể tham khảo cách kích hoạt lỗi hiển thị lỗi.
Với cách này, bạn có thể tìm thấy một phần chính xác đoạn code gây ra lỗi. Bạn cần truy cập vào phần hosting control panel > Chọn PHP Configuration > Cài Display Errors với giá trị là Enabled > nhấn nút Save. Sau đó, tất cả lỗi trong code của bạn sẽ được hiển thị trên màn hình.
Khi xác nhận được lỗi, tiến hành mở file lỗi được nhắc đến và xác định dòng lỗi. Để biết thêm các thông tin về xử lý lỗi bạn cần liên hệ với nhà cung cấp hoặc thông qua Google, Stackoverflow, WordPress Forums,..
Khôi phục lại Backup
Trong trường hợp bản backup WordPress của bạn vẫn hoạt động thì hãy khôi phục để sửa lỗi 500 Internal Server Error cụ thể như sau:
Đầu tiên, xóa hết toàn bộ WordPress site file hiện tại > Upload lại toàn bộ nội dung từ bản backup > Tải lại website và kiểm tra lỗi đã được sửa hay chưa.
Tải lên file WordPress gốc
Một trong những cách cuối cùng mà bạn có thể thử để tự sửa lỗi 500 Internal Server Error là tải bản WordPress mới và thay thế các file gốc của website. Trước khi tiến hành bạn nên lưu lại một bản backup WordPress để tránh mất toàn bộ dữ liệu.
- Bước 1: Tải bản mới nhất của WordPress.
- Bước 2: Lưu và unzip file trên máy tính.
- Bước 3: Xóa các file wp-config-sample.php và wp-content folder để tránh lưu đè dữ liệu quan trọng.
- Bước 4: Chuyển tất cả file lên hosting và thông qua FileZilla FTP để lưu đè tập tin.
Liên hệ với các nhà cung cấp hosting
Sau khi đã thử qua tất cả cách nhưng vẫn không thể khắc phục được lỗi, bạn nên liên hệ với các nhà cung cấp dịch vụ hosting và giải thích rõ vấn đề bạn đang mắc phải để các kỹ thuật viên giúp bạn tìm ra nguyên nhân và sửa lỗi 500 Internal Server Error nhanh chóng nhé.
Cách khắc phục một số lỗi 500 Internal Server Error khác
Thông thường các nguyên nhân gây ra lỗi 500 Internal Server Error hầu hết là do máy chủ. Một số cách khác cách khác có thể áp dụng để khắc phục tình trạng lỗi cơ bản này mà bạn có thể tham khảo như:
Lỗi sai quyền cho phép đối với file
Trường hợp bạn thiết lập sai quyền cho phép của các file hay thư mục trên máy chủ có thể là nguyên nhân gây ra tình trạng lỗi 500 Internal Server Error. Cách sửa lỗi vô cùng đơn giản, bạn chỉ cần xem lỗi hiển thị URL và xác nhận lại quyền cho các file và thư mục đó.
Lỗi PHP Server Timed Out
Thường xảy ra trên server Linux hay Unix chạy PHP. Khi có một lỗi xuất hiện trên PHO lib/package và server không thể đọc được file PHP sẽ gây ra lỗi 500 Internal Server Error.
Nếu lỗi xảy ra do tình trạng người dùng truy cập quá nhiều dẫn đến server bị quá tải thì không thể điều chỉnh được.
Lỗi file .htaccess
Khi file .htaccess trên server của bạn bị lỗi hay chứa quá nhiều mã code lỗi cũng có thể gây ra lỗi này. Để sửa lỗi bạn cần đảm bảo tất cả các file .htaccess của bạn không gặp bất kỳ một lỗi nào.
Để xác minh rõ lỗi 500 Internal Server Error có phải là do file .htaccess hay không cách đơn giản nhất là bạn xóa hoặc di chuyển file và tiến hành tải/refresh lại trang web một lần nữa. Nếu không còn xảy ra tình trạng lỗi thì đây chắc hẳn là nguyên nhân gây ra lỗi.
Lời kết
Trên đây là toàn bộ những nội dung về lỗi 500 Internal Server Error và hướng dẫn cách khắc phục lỗi chi tiết và đơn giản mà Vietnix muốn chia sẻ đến bạn đọc trong bài viết hôm nay. Mong rằng bạn đọc sẽ có được những thông tin hữu ích và áp dụng sửa lỗi thành công. Nếu trong quá trình thực hiện có bất cứ thắc mắc nào cần giải đáp thi đừng ngần ngại mà để lại bình luận bên dưới nhé.