HƯỚNG DẪN SETUP – CỨU TRUYỆN
--------------------------------------------------
1. CẤU HÌNH DATABASE
--------------------------------------------------
File: config/database.php
Thay đổi thông tin kết nối MySQL:
$host = 'localhost'; // Địa chỉ MySQL server
$user = 'root'; // Tên người dùng MySQL
$pass = ''; // Mật khẩu MySQL
$dbname = 'cuutruyenne'; // Tên database
--------------------------------------------------
2. CẤU HÌNH PROXY DOMAIN (CLOUDFLARE WORKERS)
--------------------------------------------------
Website cần 2 Cloudflare Workers riêng biệt để proxy API và ảnh.
File cấu hình: config/proxy.php
Code worker có sẵn trong thư mục: proxy-workers/
thichtruyentranh(online).js - Dành cho PROXY_IMAGE_DOMAIN
cuutruyen(click).js - Dành cho PROXY_CUUTRUYEN_DOMAIN
--------------------------------
Worker 1: Proxy ảnh / API MangaDex
--------------------------------
- Truy cập Cloudflare (https://dash.cloudflare.com) > Compute & AI > Workers & Pages.
- Tạo Worker mới > chọn Start with Hello world! (đặt tên ví dụ: mangadex-proxy)
- Copy toàn bộ nội dung file:
proxy-workers/thichtruyentranh(online).js
- Paste vào editor → Save and Deploy
- Vào Settings > Triggers
- Thêm Custom Domain
Ví dụ: https://mangadex-proxy.demo1.workers.dev
--------------------------------
Worker 2: Proxy API CuuTruyen
--------------------------------
- Tạo thêm 1 Worker mới (đặt tên ví dụ: cuutruyen-proxy)
- Copy toàn bộ nội dung file:
proxy-workers/cuutruyen(click).js
- Paste vào editor → Save and Deploy
- Vào Settings > Triggers
- Thêm Custom Domain
Ví dụ: https://cuutruyen-proxy.demo1.workers.dev
--------------------------------
Cấu hình domain trong config/proxy.php
--------------------------------
Proxy ảnh / API MangaDex (dòng 7–8):
define('PROXY_IMAGE_DOMAIN', 'https://thichtruyentranh.online');
→ Thay bằng domain Worker 1 của bạn
Proxy API CuuTruyen (dòng 12–13):
define('PROXY_CUUTRUYEN_DOMAIN', 'https://cuutruyen.click');
→ Thay bằng domain Worker 2 của bạn
Lưu ý:
- Mỗi Worker bắt buộc dùng 1 domain riêng
- Có thể dùng subdomain hoặc workers.dev
- Không dùng chung domain cho 2 worker
--------------------------------------------------
3. CẤU HÌNH GOOGLE OAUTH (ĐĂNG NHẬP GOOGLE)
--------------------------------------------------
File: config/google-callback.php
Dòng 9–10:
$client->setClientId('YOUR_CLIENT_ID');
$client->setClientSecret('YOUR_CLIENT_SECRET');
Cách lấy Google OAuth Credentials:
- Truy cập Google Cloud Console
- Tạo project mới hoặc chọn project có sẵn
- Vào APIs & Services > Credentials
- Create Credentials > OAuth client ID
- Chọn loại: Web application
- Thêm Authorized redirect URI:
https://yourdomain.com/config/google-callback.php
- Copy Client ID và Client Secret vào file trên
--------------------------------------------------
4. CẤU HÌNH EMAIL (PHPMAILER)
--------------------------------------------------
File: config/mail.php
SMTP Gmail (dòng 16–17):
$mail->Password = 'aaaa bbbb cccc dddd';
Email hiển thị người gửi (dòng 21):
Lưu ý khi dùng Gmail:
- Bắt buộc bật 2-Step Verification
- Tạo App Password tại:
https://myaccount.google.com/apppasswords
- Sử dụng App Password (16 ký tự) thay cho mật khẩu Gmail
- Nếu dùng email khác:
+ Thay $mail->Host
+ Thay $mail->Port tương ứng
--------------------------------------------------
5. CẤU HÌNH CLOUDFLARE TURNSTILE (CAPTCHA)
--------------------------------------------------
File: register.php
Secret Key (Server-side) – dòng 52:
$secret_key = 'YOUR_SECRET_KEY';
Site Key (Client-side) – dòng 210:
sitekey: 'YOUR_SITE_KEY',
Cách lấy Turnstile Keys:
- Truy cập Cloudflare Dashboard
- Chọn domain của bạn
- Vào Turnstile
- Click Add Site
- Nhập tên site và domain
- Copy Site Key và Secret Key
- Thay vào các vị trí tương ứng trong register.php