Sửa lỗi 404 phát sinh hàng loạt [Lỗi Custom Permalinks – mod_rewrite]

Để fix lỗi bạn có thể làm theo cách sau:

1. Kiểm tra cấu trúc Permalinks Plain

Vào Settings -> Permalinks, chọn lại cấu trúc mặc định là Plain, rồi Save changes!

Nếu vấn đề đúng là lỗi mod_rewrite, thì lúc này các lỗi 404 không còn nữa, vì chúng ta đang dùng cấu trúc Permalinks mặc định, không phải Pretty Permalinks.

Sau đó các bạn vào lại link xem có còn lỗi không?

2. Reset Permalinks

Sau khi xác nhận lỗi là do mod_rewrite chưa bật, chúng ta vào lại Settings -> Permalinks, chọn một cấu trúc Custom Permalinks bạn muốn (không phải Plain), rồi Save changes!

Việc này giúp cập nhật lại thông tin mod_rewrite trên file .htaccess. Sau đó bạn xóa cache trình duyệt, kiểm tra lại xem lỗi 404 hàng loạt có còn không.

3. Cấu hình mod_rewrite thủ công

Nếu ở bước thứ 2 ta chưa giải quyết được lỗi 404, thì cần cấu hình lại mod_rewrite một cách thủ công.

– Bật mod_rewrite trong Apache, Litespeed Server
Ta cần vào thư mục chứa code, mở file .htacess vào thêm các đoạn code này, Save lạ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

Xong!

Giờ bạn cần vào Settings -> Permalinks, chọn cấu trúc mình muốn rồi Save changes! để cập nhật lại thông tin đường dẫn!

Check lại, 99% là lỗi 404 hàng loạt đã được fix, 1% còn lại thì lỗi nằm ở các plugins hoặc theme, bạn cần check kỹ hơn và tìm giải pháp khác!

4. Tìm file .htaccess ở đâu?

Mỗi Website dùng hosting hay vps với Webserver là Apache hoặc Litespeed cache đều có .htaccess trong thư mục chứa code.

Đối với WordPress, nó nằm trong thư mục chứa mã nguồn WordPress, cùng thư mục với file cấu hình wp-config.php!

5. Cuối cùng!

Lỗi 404 hàng loạt 99% là do không bật chế độ mod_rewrite trên hosting/ vps. Fix lỗi này khá đơn giản như đã hướng dẫn ở trên.

Be the first to comment

Leave a Reply

Your email address will not be published.


*