Bạn nhập tên người dùng và mật khẩu trên trang đăng nhập WordPress, bấm Log In, rồi bị đưa thẳng về trang đăng nhập. Không có lỗi, không có thông báo, chỉ lại đúng biểu mẫu đó. Hoặc trình duyệt báo “This page isn’t working: redirected you too many times” (ERR_TOO_MANY_REDIRECTS).
Vòng lặp chuyển hướng đăng nhập này gần như luôn do cookie, URL trang sai, cấu hình HTTPS chưa đúng, hoặc một plugin. Đây là cách thoát ra.
Bước 1: Xóa cookie và thử cửa sổ riêng tư
WordPress giữ bạn ở trạng thái đăng nhập bằng cookie. Nếu một cookie cũ hoặc bị hỏng còn lưu, WordPress sẽ liên tục từ chối cookie đó.
- Mở cửa sổ riêng tư hoặc ẩn danh và thử đăng nhập ở đó.
- Nếu đăng nhập được, hãy xóa cookie và bộ nhớ đệm của trang này trong trình duyệt thường dùng.
- Đảm bảo trình duyệt không chặn cookie đối với tên miền của bạn.
Bước 2: Kiểm tra WordPress Address và Site Address
Nếu hai URL mà WordPress dùng cho trang không khớp với cách bạn truy cập, cookie được đặt cho địa chỉ này nhưng lại được kiểm tra ở địa chỉ kia. Những chỗ lệch thường gặp là www với bản không có www, và http với https.
Bạn không sửa được các giá trị này trong wp-admin nếu không đăng nhập được, nên hãy đặt chúng trong wp-config.php, phía trên “That’s all, stop editing”:
define( 'WP_HOME', 'https://www.example.com' );
define( 'WP_SITEURL', 'https://www.example.com' );
Dùng đúng địa chỉ mà trang của bạn cần tải, có hoặc không có www, và dùng https nếu bạn đã có chứng chỉ SSL. Sau đó hãy thử đăng nhập lại.
Bước 3: Sửa xung đột chuyển hướng HTTPS
“Too many redirects” thường nghĩa là hai hệ thống đang chuyển hướng ngược chiều nhau. Ví dụ, WordPress đưa khách sang HTTPS trong khi proxy hoặc CDN đưa họ về HTTP.
- Cloudflare: nếu chế độ SSL/TLS đang là Flexible, Cloudflare kết nối tới máy chủ của bạn qua HTTP trong khi WordPress yêu cầu HTTPS. Hãy đặt thành Full hoặc Full (strict) khi máy chủ đã có chứng chỉ.
- Đứng sau proxy hoặc bộ cân bằng tải: WordPress có thể không nhận ra HTTPS. Thêm đoạn này vào
wp-config.php, phía trên phần cài đặt WordPress:if ( isset( $_SERVER['HTTP_X_FORWARDED_PROTO'] ) && 'https' === $_SERVER['HTTP_X_FORWARDED_PROTO'] ) { $_SERVER['HTTPS'] = 'on'; } - Quy tắc chuyển hướng bị trùng: kiểm tra
.htaccessvà bảng điều khiển hosting xem có chuyển hướng HTTPS hoặc www nào xung đột với plugin SSL không. Chỉ giữ một bộ quy tắc.
Bước 4: Tắt các plugin ảnh hưởng đến đăng nhập
Plugin bảo mật, plugin tùy biến trang đăng nhập, plugin xác thực hai yếu tố, plugin thành viên và plugin bộ nhớ đệm đều có thể can thiệp vào quá trình đăng nhập. Khi không vào được wp-admin:
- Trong File Manager hoặc SFTP, vào
wp-content/plugins/. - Đổi tên thư mục
pluginsthànhplugins-off. - Thử đăng nhập. Nếu được, đổi tên thư mục lại và kích hoạt lại từng plugin một để tìm thủ phạm.
Đồng thời kiểm tra plugin bộ nhớ đệm hoặc cache của máy chủ không được cache /wp-login.php hoặc /wp-admin/. Hai đường dẫn này không bao giờ được đưa vào bộ nhớ đệm.
Bước 5: Loại trừ theme
Hiếm khi, functions.php của theme chứa mã chuyển hướng làm hỏng đăng nhập. Đổi tên thư mục theme đang dùng trong wp-content/themes/ để WordPress quay về theme mặc định, rồi thử lại.
Bước 6: Đặt lại tệp .htaccess
Tệp .htaccess bị hỏng hoặc quá phức tạp có thể gây vòng lặp chuyển hướng. Đổi tên thành .htaccess-old và tạo tệp mới chứa các quy tắc WordPress chuẩn:
# 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
Nếu trang nằm trong thư mục con, hãy chỉnh RewriteBase và quy tắc cuối. Thêm lại từng quy tắc bảo mật hoặc chuyển hướng từ tệp cũ, từng cái một.
Bước 7: Kiểm tra thiết lập phiên và cookie
- Đảm bảo đồng hồ máy chủ đúng giờ. Cookie trông như đã hết hạn có thể bị từ chối nếu giờ lệch quá xa.
- Nếu bạn đã định nghĩa
COOKIE_DOMAINtrongwp-config.php, hãy chắc chắn giá trị khớp với tên miền của trang, hoặc xóa hằng số đó. - Kiểm tra máy chủ còn dung lượng đĩa trống. Đĩa đầy có thể khiến phiên không được lưu.
Vẫn bị khóa bên ngoài? Dịch vụ WordPress Fix của chúng tôi đưa bạn vào lại wp-admin và sửa vấn đề chuyển hướng hoặc đăng nhập từ gốc. Giá cố định $45, được xác nhận trước khi bắt đầu. Yêu cầu sửa.
Câu hỏi thường gặp
Vì sao vòng lặp bắt đầu sau khi tôi cài chứng chỉ SSL?
URL của trang vẫn dùng http, hoặc CDN hay proxy đang chuyển hướng theo chiều ngược lại. Hãy đặt cả hai URL thành https và sửa chế độ SSL của CDN. Hướng dẫn sửa mixed content sau khi chuyển sang HTTPS của chúng tôi nói nốt phần còn lại.
Tôi có đặt lại mật khẩu được không nếu trang đăng nhập cứ tải lại?
Đặt lại mật khẩu không sửa vòng lặp chuyển hướng, vì vòng lặp liên quan đến cookie và URL, không phải mật khẩu của bạn. Hãy sửa nguyên nhân trước.
Vòng lặp chuyển hướng đăng nhập có phải dấu hiệu bị hack không?
Thường thì không. Nhưng nếu bạn thấy mã chuyển hướng lạ trong .htaccess hoặc tệp theme, hãy đọc hướng dẫn việc cần làm nếu trang WordPress bị hack.




