Sử dụng reCAPTCHA với phpBB2

Lưu ý quan trọng: Phiên bản 1.0 của API reCAPTCHA không còn được hỗ trợ, vui lòng nâng cấp lên phiên bản 2.0. Tìm hiểu thêm

Trình bổ trợ reCAPTCHA phpBB2 sử dụng CAPTCHA để ngăn chặn nội dung rác trên diễn đàn.

Bạn nên sử dụng phpBB MOD của reCAPTCHA để cài đặt reCAPTCHA. Có 2 bản sửa đổi, một bản cho đăng ký và một cho bài đăng với tư cách khách.

Ngoài MOD phpBB, cũng có một bản vá để bật reCAPTCHA khi đăng ký. Để cài đặt reCAPTCHA bằng bản vá, hãy làm theo các hướng dẫn sau:

  1. Tải xuống tệp zip và giải nén.
  2. Di chuyển tệp recaptchalib.php vào thư mục bao gồm phpBB của bạn.
  3. Áp dụng bản vá đầu tiên bằng cách chạy lệnh sau từ thư mục phpBB include:
    patch -b usercp_register.php < /path/to/usercp_register.patch
  4. Di chuyển tệp profile_add_body.tpl.patch vào thư mục mẫu phpBB/<your_theme> (theo mặc định <your_theme> là "subBạc")
  5. Áp dụng bản vá thứ hai bằng cách chạy lệnh sau từ thư mục phpBB mẫu/<your_theme>:
    patch -b profile_add_body.tpl < /path/to/profile_add_body.tpl.patch
  6. Bạn có thể đăng ký khoá reCAPTCHA tại đây. reCAPTCHA sẽ cấp cho bạn một khoá công khai và riêng tư. Mở usercp_register.php trong thư mục bao gồm và cập nhật $recaptcha_public_key và $recaptcha_private_key với các giá trị bạn đã được cấp.
  7. Vậy là xong! Bây giờ, tiện ích reCAPTCHA của bạn sẽ xuất hiện trên trang đăng ký của người dùng.

Câu hỏi thường gặp

Nếu lệnh vá lỗi không thành công thì sao?

Bản vá được tạo bằng cách sử dụng điểm khác biệt hợp nhất (diff -u). Các phiên bản khác nhau của tệp này hoặc các nội dung sửa đổi khác có thể gây ra xung đột. Bạn có thể nghiên cứu tệp bản vá để xem nội dung nào đang được sửa đổi và vấn đề này gây ra sự xung đột với tệp như thế nào.

Tôi muốn khôi phục các thay đổi của bản vá hoặc gỡ cài đặt reCAPTCHA, làm cách nào để thực hiện điều này?

Khi bạn chạy lệnh vá có tuỳ chọn "-b", một bản sao lưu các tệp được tạo trong cùng thư mục đó. Dùng lệnh mv để ghi đè tệp đã vá bằng tệp gốc. Bạn cũng có thể xoá tệp recaptchalib.php khỏi thư mục include.