Hướng dẫn fix lỗi 500 Internal Server Error trong Magento 2
Magento 2 500 Internal Server Error là lỗi phổ biến nhất trong hosting. Nó thường xảy ra khi cài đặt, nâng cấp hoặc xóa các thành phần của Magento như theme, plugin, bản vá, v.v. Ngoài ra cũng có thể xảy ra lỗi này khi sao lưu hệ thống, trên trang sản phẩm hoặc trang đăng nhập quản trị. Với lỗi này, cửa hàng của bạn sẽ phải đối mặt với tình trạng sụt giảm lượng truy cập, ảnh hưởng đến trải nghiệm của người dùng. Vì vậy, nó cần được sửa chữa nhanh chóng nhất có thể. Trong bài viết này mình sẽ hướng dẫn fix lỗi 500 Internal Server Error trong Magento 2.
Lý do gây ra lỗi 500 Internal Server Error:
- Vấn đề về quyền.
- Giới hạn bộ nhớ.
- Vấn đề với tệp .htaccess.
- Bật chế độ bảo trì Magento.
- Thiếu tiện ích mở rộng.
Một số cách để fix lỗi 500 Internal Server Error trong Magento 2
Trước khi khắc phục lỗi, bạn nên bật chế độ nhà phát triển. Để bật chế độ này bạn chỉ cần sử dụng lệnh
php bin/magento deploy:mode:set developer
Cách 1: Tăng giới hạn bộ nhớ
Để tăng giới hạn ở tệp .htaccess, bạn hãy thêm dòng bên dưới.
php_value memory_limit 1024M
Đối với tệp php.ini, bạn chỉ cần sửa.
memory_limit = 1024M
Cách 2: Tắt chế độ bảo trì
Chế độ bảo trì thay đổi quyền đối với tệp index.php thành 666 và điều này khiến trình duyệt web không thể thực thi.
Để tắt chế độ bảo trì bạn có thể xóa file maintenance.flag hoặc chạy lệnh:
php bin/magento maintenance:disable
Sau đó, thay đổi quyền của index.php thành 755, xóa bộ nhớ cache và kiểm tra xem lỗi đã được khắc phục hay chưa.
Cách 3: Đổi tên hoặc xóa tệp .htaccess
Trong một số trường hợp, lỗi có thể xảy ra do cài đặt sai trong tệp .htaccess. Bạn hãy thử đổi tên hoặc xóa tệp .htaccess rồi kiểm tra xem lỗi đã được khắc phục chưa. Nếu lỗi 500 được khắc phục sau khi xóa tệp .htaccess, thì chắc chắn đã có một số vấn đề về phiên bản PHP hoặc cấu hình máy chủ bị thiếu.
Cách 4: Cài đặt tiện ích mở rộng CURL
Lỗi 500 còn có thể xảy ra do thiếu extension CURL. Cài đặt phần mở rộng CURL bằng cách chạy lệnh dưới đây.
yum install curl libcurl3 libcurl3-dev php5-curl
Tiếp theo để áp dụng các thay đổi, hãy khởi động lại httpd
service httpd restart
Cách 5: Vấn đề về plugin của bên thứ ba
Ngoài ra, bạn cũng có thể gặp lỗi này sau khi triển khai một plugin hoặc bản cập nhật mới. Trong trường hợp này, hãy sử dụng lệnh sau để tắt mod và liên hệ với nơi hỗ trợ module.
php bin/magento mod:disable
Kết luận
Trên đây là một số giải pháp để sửa lỗi 500 Internal Server Error trong Magento 2. Đây là một lỗi khá phổ biến, vì vậy bạn không cần phải quá lo lắng. Bạn chỉ cần tìm ra nguyên nhân và thử các giải pháp phù hợp.
Cảm ơn bạn đã đọc bài viết.
Xem thêm các bài Hướng dẫn Magento 2.