Spaces:
Sleeping
Sleeping
| # TPhimX - Cloudflare Worker R2 Auto-Cache CDN & Media Proxy | |
| Dự án này chứa mã nguồn **Cloudflare Worker** chịu trách nhiệm chạy **Reverse Proxy & Tự động lưu trữ (Cache) luồng phim HLS** vào bộ nhớ Cloudflare R2 bucket của bạn. | |
| --- | |
| ## ⚡ Các Tính Năng Vượt Trội | |
| 1. **Bỏ qua CORS (CORS Bypass):** Cho phép phát phim trực tiếp từ trình duyệt trên mọi tên miền (`localhost`, `vercel.app`, `Smart TV`, `Mobile App`). | |
| 2. **Hỗ trợ tua phim (Range Requests):** Trình phát phim có thể tua (seeking/scrubbing) mượt mà không bị xoay tròn tải lại nhờ hỗ trợ mã phản hồi HTTP `206 Partial Content`. | |
| 3. **Tự động Cache vào R2 (Cache Miss / Cache Hit):** | |
| - Khi có người xem phim, Worker sẽ kiểm tra trong Cloudflare R2 bucket (`tphimx-movie`) trước. | |
| - Nếu phim **đã có** (Cache HIT): Worker phát trực tiếp từ R2 cực nhanh và mượt mà, **không tốn băng thông và zero egress fee**. | |
| - Nếu phim **chưa có** (Cache MISS): Worker tải phim từ link gốc (như KKPhim/NguonC), đồng thời lưu file đó vào R2 bucket của bạn ở chế độ nền (background task) và trả về cho người dùng cùng lúc. Lần sau người khác xem sẽ là Cache HIT! | |
| 4. **M3U8 Playlist Rewriter:** Tự động phân tích file danh sách phát `.m3u8` và viết lại toàn bộ đường dẫn các phân đoạn `.ts` để chúng tự động đi qua Worker và lưu vào R2 bucket của bạn. | |
| --- | |
| ## 🚀 Hướng Dẫn Triển Khai (Chỉ 2 Phút) | |
| Hãy chắc chắn rằng máy tính của bạn đã cài đặt Node.js. Chạy các lệnh sau trong Terminal tại thư mục này: | |
| ### Bước 1: Đăng nhập vào Cloudflare | |
| Bật Terminal và chạy lệnh sau để đăng nhập tài khoản Cloudflare của bạn: | |
| ```bash | |
| npx wrangler login | |
| ``` | |
| *Trình duyệt sẽ tự động mở ra, bạn chỉ cần bấm **Allow/Xác nhận**.* | |
| ### Bước 2: Triển khai Worker | |
| Chạy lệnh sau để deploy trực tiếp lên hệ thống Cloudflare toàn cầu: | |
| ```bash | |
| npx wrangler deploy | |
| ``` | |
| *Sau khi hoàn tất, hệ thống sẽ trả về một đường dẫn Worker của bạn, ví dụ:* | |
| `https://tphimx-r2-proxy.tên-tài-khoản.workers.dev` | |
| --- | |
| ## ⚙️ Cấu Hình Tên Miền / Cập Nhật Ứng Dụng Web | |
| Sau khi đã deploy xong và có link Worker của bạn: | |
| 1. Mở file `.env` của web và cấu hình thêm biến môi trường sau để ứng dụng web tự động nhận diện: | |
| ```env | |
| PUBLIC_CLOUDFLARE_PROXY_URL=https://tphimx-r2-proxy.tên-tài-khoản.workers.dev | |
| ``` | |
| 2. Các trang phát phim như [[slug].astro](file:///c:/Users/TXA3100/Desktop/SRC%20-%20ROPHIm/web/src/pages/xem/%5Bslug%5D.astro) sẽ tự động ưu tiên điều hướng qua Proxy R2 của bạn để phát phim nhanh chóng và tự động lưu trữ lại. | |