Tính năng chính
Init WordPress Log được thiết kế cho developer, agency và admin WordPress cần kiểm tra lỗi nhanh, gọn, an toàn:
- Tập trung vào WordPress: Chỉ đọc log trong
wp-content, không động vào/var/logcủa hệ thống. - Hỗ trợ nhiều nguồn log:
- WordPress Debug:
wp-content/debug.log - WooCommerce: tự động chọn file
.logmới nhất trongwp-content/uploads/wc-logs - Wordfence: thư mục
wp-content/wflogs - Solid Security:
wp-content/uploads/ithemes-security/logs - Sucuri:
wp-content/uploads/sucuri
- WordPress Debug:
- Giao diện hiện đại: Sidebar chọn nguồn log, khu vực hiển thị dạng console, highlight theo cấp độ.
- Filter theo cấp độ: Lọc nhanh Error, Warning, Notice, Info để tập trung vào lỗi quan trọng.
- Tìm kiếm theo từ khóa: Ô search với debounce, lọc trên tập log mới nhất (VD:
SQLSTATE,Fatal error,security…). - Live Tail: Chế độ tự động refresh theo chu kỳ (mặc định 3 giây), giúp theo dõi log realtime khi debug.
- Giới hạn dòng: Chọn hiển thị “Last 100 / 500 / 1000 lines” để tránh tải log quá nặng.
- Download & Clear: Tải full log về máy, hoặc clear nội dung log (nếu file có quyền ghi).
- Giao diện thân thiện: Tự động cuộn xuống cuối file, hiển thị số dòng / dung lượng log.
- Nhớ trạng thái UI: Lưu log source, line count, level filter, từ khóa search bằng localStorage – mở lại là dùng tiếp.
Bảo mật được ưu tiên ngay từ thiết kế:
- Giới hạn thư mục log: Chỉ đọc ở các thư mục được cấu hình (mặc định là
wp-contentvàwp-content/uploads). - Trim đường dẫn: Khi hiển thị, chỉ show từ
/wp-content/...– không lộ path tuyệt đối của server. - Đăng nhập bắt buộc: Màn hình login riêng, không public log.
- Session an toàn: Cookie HttpOnly, SameSite=Strict, hỗ trợ Secure nếu dùng HTTPS.
- CSRF protection: Token riêng cho login và các hành động nhạy cảm (clear log).
- Chống brute-force: Rate limit login + lock tài khoản tạm thời sau nhiều lần nhập sai.
Thông tin phiên bản
- Phiên bản: 1.0.0
- Cập nhật: 2025-12-01
Yêu cầu hệ thống
Để Init WordPress Log hoạt động ổn định, môi trường của bạn nên đáp ứng:
- PHP: 7.4 trở lên (khuyến nghị PHP 8+).
- Extensions:
json,mbstring(khuyến nghị, nhưng hầu hết hosting đều có sẵn). - Session: PHP session bật và hoạt động bình thường.
- File permissions: Quyền đọc cho các file log trong
wp-content. Để dùng chức năng “Clear log”, file phải có quyền ghi. - Môi trường WordPress: Thư mục
wp-contentnằm cùng project, Init WordPress Log đặt trong cùng root với WordPress.
Cài đặt và cấu hình

Bước cài đặt cơ bản:
- Giải nén
init-wordpress-logvào root dự án WordPress:/wp-config.php /wp-content/ /init-wordpress-log/ index.php /includes /assets - Mở
includes/config.phpvà thiết lập thông tin đăng nhập:'username' => 'admin', // Option 1: mật khẩu plain text 'password' => 'password', // Option 2: password_hash (ưu tiên nếu không rỗng) // Ví dụ: // 'password_hash' => password_hash('Your-Strong-Password', PASSWORD_DEFAULT), 'password_hash' => '',Để tạo mật khẩu mạnh hoặc password_hash, bạn nên dùng công cụ Init Password Generator.
- Kiểm tra và tinh chỉnh các thư mục log:
$WP_ROOT = dirname(__DIR__, 2); $WP_CONTENT = $WP_ROOT . '/wp-content'; $WP_UPLOADS = $WP_CONTENT . '/uploads'; 'allowed_log_dirs' => [ $WP_CONTENT, $WP_UPLOADS, ], 'sources' => [ [ 'id' => 'wp_debug', 'label' => 'WordPress Debug', 'path' => $WP_CONTENT . '/debug.log', 'type' => 'wordpress', 'icon' => '🔷', ], [ 'id' => 'woo_latest', 'label' => 'WooCommerce (Latest Log)', 'path' => $WP_UPLOADS . '/wc-logs', 'type' => 'woocommerce', 'icon' => '🛒', ], // ... ], - Bật WordPress debug log (nếu muốn xem
debug.log):define( 'WP_DEBUG', true ); define( 'WP_DEBUG_LOG', true ); // Tùy chọn: tắt hiển thị lỗi ra màn hình define( 'WP_DEBUG_DISPLAY', false );
Các thiết lập bảo mật & hiệu năng khác:
'session_timeout' => 3600, // 1 giờ
'force_https' => false, // true nếu muốn bắt buộc HTTPS
'login_max_attempts' => 5, // số lần sai trước khi lock
'login_lockout_time' => 600, // 10 phút
'max_lines' => 1000, // số dòng tối đa mỗi lần đọc
'max_file_size' => 50 * 1024 * 1024, // 50MB
'refresh_interval' => 3, // giây (cho live tail)
Ví dụ sử dụng
Một số kịch bản sử dụng phổ biến:
- Xem debug.log:
Mở trình duyệt và truy cập:
https://example.com/init-wordpress-log/
Đăng nhập > chọn nguồn WordPress Debug > xem lỗi PHP, notice, deprecated. - Debug lỗi WooCommerce:
Chọn nguồn WooCommerce (Latest Log) để auto-open file log mới nhất trongwc-logs, sau đó dùng ô search với từ khóa nhưCRITICAL,SQLSTATE,Webhook… - Theo dõi tấn công bảo mật:
Chọn Wordfence / Solid Security / Sucuri, bật Live Tail để xem event mới đổ về realtime. - Lọc theo cấp độ lỗi:
Dùng dropdown “All levels / Error / Warning / Notice / Info” để tập trung vào những dòng quan trọng khi log quá dài. - Tải log về phân tích:
Nhấn nút Download để tải file log gốc (file được resolve từ thư mục log tương ứng) và mở bằng editor yêu thích. - Dọn sạch log sau khi fix:
Khi log đã quá dài, dùng nút Clear để reset nội dung (nếu file có quyền ghi). Hành động này có CSRF token bảo vệ và yêu cầu xác nhận.
Cách hoạt động
Init WordPress Log vận hành theo các bước rõ ràng:
- Nhận request từ trình duyệt (UI hoặc AJAX).
- Xác thực phiên đăng nhập, kiểm tra session timeout và CSRF token (với hành động nhạy cảm).
- Từ
source idđược chọn, resolve ra đường dẫn log:- Nếu là file cụ thể: dùng trực tiếp.
- Nếu là thư mục (VD
wc-logs): tìm file.logmới nhất.
- Kiểm tra đường dẫn có nằm trong
allowed_log_dirshay không. Nếu không, request bị từ chối. - Đọc phần cuối file theo số dòng cấu hình (tail), hoặc áp dụng search keyword nếu có.
- Parse từng dòng để cố gắng tách thời gian, cấp độ, message, sau đó map sang các class CSS (
error,warning,notice,info). - Trả kết quả dạng JSON cho frontend, frontend render log với màu sắc và format dễ đọc.
- Đối với nút Download, tool gửi trực tiếp nội dung file log với header
Content-Dispositionđể trình duyệt tải về.
Tích hợp & tối ưu trong môi trường WordPress
Một số gợi ý để dùng Init WordPress Log an toàn hơn trong production:
- Đặt thư mục ở vị trí khó đoán: Ví dụ
/tools/init-wp-log/thay cho tên quá obvious. - Kết hợp thêm lớp bảo vệ: Sử dụng HTTP Basic Auth, IP allowlist hoặc firewall level để chặn truy cập trái phép.
- Chỉ bật trên môi trường cần debug: Staging, dev, hoặc production có lớp bảo vệ chặt.
- Giới hạn nguồn log: Nếu không dùng plugin nào, có thể xóa bớt sources trong config.
Kết luận
Init WordPress Log là giải pháp xem log gọn nhẹ, thực dụng và tập trung cho WordPress. Thay vì SSH vào server, mở từng file log bằng editor, bạn chỉ cần mở một giao diện duy nhất để: theo dõi debug.log, log WooCommerce, log firewall và plugin bảo mật – tất cả trong một màn hình.
Nhờ cơ chế giới hạn thư mục, session bảo mật, CSRF protection, rate limit và giao diện được tối ưu cho dev, Init WordPress Log vừa giảm rủi ro bảo mật vừa tăng tốc độ xử lý sự cố. Công cụ phù hợp cho developer, freelancer, agency, hosting nội bộ hoặc bất kỳ ai phải debug site WordPress thường xuyên.
Nếu bạn đang cần một trình xem log: tự host, không phụ thuộc hệ thống log của OS, hiểu WordPress, và dễ deploy – thì Init WordPress Log là mảnh ghép hoàn hảo trong hệ sinh thái Init HTML.
Hãy cài đặt, cấu hình nguồn log bạn cần, và bắt đầu “đọc” WordPress theo cách dễ chịu hơn ngay hôm nay.
Bình luận