Về cơ bản nó là 1 hình thức kết hợp Cloudflare Workers and Google Drive để tạo ra 1 trang index trên Google Drive
Bạn có thể chọn làm index 1 thư mục nào đó, hoặc tất cả các file trong Driver của bạn
Trên Gitgub cũng có thành viên đã tổng hợp lại khá nhiều code, mỗi code lại có thêm các tính năng khác nhau, kiểu thậm chí có thể search các file trên Google Drive, hay kết hợp nhiều tài khoản Google Drive vào 1 trang index …..
Bài này mình sẽ viết theo hướng làm nhanh, gọn lẹ nhất bằng cách sử dụng tool có sẵn dạng GDIndex Code Builder từ HashHackers sau đó dùng trên bộ code GoIndex Extended – Google Drive Index của menukaonline
Chủ yếu do bộ code này giao diện nhìn …. đẹp, chứ tính năng các kiểu cũng khá là phò 😛
Bước 1: Truy cập vào đây để tới GDIndex Code Builder của HashHackers
Login vào tài khoản Google của bạn, cấp quyền để gdi.js.org sẽ có thể xem, chỉnh sửa, tạo và xóa tất cả tệp của bạn trên Google Drive
Bước 2:
Chọn đặt tên cho Site Name và thư mục bạn muốn tạo index, nếu chọn root nghĩa là sẽ index toàn bộ các thư mục trong Drive
Bước 3:
Ta chỉ lấy 3 giá trị từ đoạn code trên là client_id, client_secret và refresh_token
"client_id": "746239575955-c4d2o1ahg4ts6ahm3a5lh5lp9g8m15h4.apps.googleusercontent.com", // Client id from Google Cloud Console "client_secret": "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", // Client Secret from Google Cloud Console "refresh_token": "1//0e_ToJOw635VdCgYIARAAGA4SNwF-L9Irps4r3GXhnvC5mzJpDzsFvUC_ajup3jfSgaAE7fHkuJaBDNWCPzy5At4iaTHMhvZdI_E", // Authorize token
Bước 4: chép 3 giá ở trên vào GoIndex Extended – Google Drive Index của menukaonline
Bước 5: Copy đoạn code được chỉnh sửa ở bước 4 vào Cloudflare Workers
Workers -> Create Woker
Xóa hết các dòng code có sẵn đi, thay bằng dòng code chỉnh sửa ở bước 4 vào, ấn tiếp vào Save and deploy
Cloudflare sẽ hỏi và xác nhận lại bạn có dùng worker được tạo ra mặc định như thế không
Ấn vào Save and deploy để xác nhận 1 lần nữa là được
Thành quả ban đầu ta đã có 1 trang Google Drive Directory Index tất cả thư mục trong Google Drive
Cấu hình GoIndex Extended lại theo nhu cầu sử dụng
Nếu bạn muốn share toàn bộ các file của bạn trên Google Drive cho người khác, thì cứ thế dùng là được
Cá nhân thì mình sẽ tạo 2 thư mục mới trên tài khoản Google Drive, 1 để share public, 1 để share private (cần user + password để truy cập vào thư mục này)
Tạo 2 thư mục với tên tùy ý, có thể tạo tên rõ ràng 1 chút, chủ yếu để nhớ nữa 😀 chứ thường sau vài năm không nhớ cái nào là cái nào luôn ấy
Lúc này khi ấn vào thư mục trên Google Drive, bạn sẽ thấy nó có link dạng
https://drive.google.com/drive/u/0/folders/1F2p_Y5olMsDcUi4QOWwlB1JWvnrDwjSu
Trong đó 1F2p_Y5olMsDcUi4QOWwlB1JWvnrDwjSu là ID của thư mục
Sửa lại code bên trong Cloudflare Workers
{ id: "1F2p_Y5olMsDcUi4QOWwlB1JWvnrDwjSu", name: "Plubic", protect_file_link: false //true or false }, { id: "1soQHADtqzQURILDOk2ckscF2QdLGOlKen", name: "Private", auth: {'bibica' : 'bibica2'}, protect_file_link: true },
protect_file_link: true nghĩa là bật bảo vệ bằng password
auth: {‘bibica‘ : ‘bibica2‘} : trong đó bibica là username, bibica2 là password
Lúc này chúng ta đã có 1 trang Google Drive Index bao gồm 2 thư mục Public và Private 😀
Cấu hình Cloudflare Workers với subdomain
Thường link từ Cloudflare Workers nó khá dài, khá khó nhớ, kiểu https://api-bibica-net.bibica-net.workers.dev/, bạn có thể đổi nó thành dạng subdomain kiểu api.bibica.net cho ngắn và dễ nhớ cũng được
Truy cập vào Workers Routes trên domain của bạn
Add route
Router: *api.bibica.net/*
Service: chọn Workers bạn sử dụng
Sau đó ấn Save
Tiếp theo tạo 1 DNS Records mới
Type: CNAME
Name (required): api
Target (required): api-bibica-net.bibica-net.workers.dev
Proxy status: bật như mặc định
Sau đó ấn Save
Chờ ít phút, để DNS được cập nhập lên hệ thống, lúc này ta đã có thể truy cập vào api.bibica.net
Về cơ bản, nếu bạn thấy tấm ảnh ở trên, xuất phát từ api.bibica.net/0:/iMages/2023-05-14_23-02-02.jpg nghĩa là mọi thứ được viết trong bài này đang hoạt động trơn tru 😀
Ứng dụng cho Google Drive Directory Index khá nhiều, bạn có thể dùng nó để làm 1 trang share file, hình ảnh chứa trên Google Drive để ai đó có thể download trực tiếp về, hoặc có thể dùng nó trên WordPress, thay vì upload hình ảnh lên server, giờ bạn có thể upload qua Google Drive, sau đó để link trực tiếp sang WordPress, đỡ tốn dung lượng và tài nguyên trên VPS hơn
Bạn cũng có thể tà đạo hơn, dùng hình thức này để share các file không có bản quyền, đi vòng vèo nhiều bước như thế, cũng khó ai biết server gốc ở đâu để report :]]
Chú ý 1 điểm nhỏ, là nếu dùng Cloudflare Workers FREE, bạn chỉ có thể dùng 100.000 requests mỗi ngày, ít người vào download thì không sao, chứ nhiều người vào thì dễ bị tình huống hết requests hé 😀
Tất nhiên bạn có thể xử lý bằng hãm hơn, kiểu tạo ra 10 tài khoản Cloudflare, mỗi tài khoản tạo 1 Workers riêng, sau đó tạo ra thành 10 link download, link này hết requests thì khách dùng link khác để down 😛 còn tất nhiên, nếu bạn làm thành dịch vụ, hoàn toàn có thể nâng cấp lên Cloudflare Workers bản trả phí để ổn định hơn
Chính sách bình luận: Chúng tôi rất trân trọng các bình luận của bạn và cảm ơn thời gian bạn dành để chia sẻ ý tưởng và phản hồi.
Ghi chú: Những bình luận được xác định là spam hoặc chỉ mang tính quảng cáo sẽ bị xóa.
• Để cải thiện trải nghiệm bình luận, chúng tôi khuyến khích bạn tạo một tài khoản Gravatar. Thêm avatar vào tài khoản Gravatar sẽ giúp bình luận của bạn dễ nhận diện hơn đối với các thành viên khác.
• ✂️ Sao chép và 📋 Dán Emoji 💪 giúp bình luận thêm sinh động và thú vị!