| Chống ăn cắp địa chỉ nhạc/phim |
|
|
| Người đăng: Hải Nam | 06/07/2007 (Số lần xem: 1399) |
|
Từ khoá: hotlink protection, music Hiện nay nhiều bạn có làm những nhạc nghe nhạc trực tuyến. Đây là hình thức giải trí rất hay, nhưng ai cũng đang đau khổ trước tình trạng link nhạc của mình bị lấy đem đi nơi khác, nhìn bandwidth tăng vùn vụt mà xót tiền. Bài viết này trình bày một phương pháp đơn giản để bảo vệ nhạc/phim cho bạn. Cách thức này chỉ áp dụng nếu host chứa nhạc là của bạn (nếu bạn lấy địa chỉ nhạc của người khác rồi chống không cho người khác nữa lấy lại thì bó tay Phương pháp phổ biến nhất để chống việc đem liên kết đi nơi khác là dùng thông tin về HTTP_REFERER để điều khiển, tuy nhiên chương trình nghe nhạc của Windows (WMP) không hỗ trợ cái này, nên đối với nhạc phim thì không thể dùng cách thông thường như bảo vệ liên kết nóng (hotlink) cho ảnh được. Một số giải pháp thay thế được đề nghị (xin các bạn bổ sung thêm):
Dưới đây là phương pháp tinh vi hơn. Bạn thậm chí có thể giới hạn những trang web nào được phép liên kết dến để nghe nhạc Giả sử trang web của bạn chạy ở máy chủ A, còn nhạc bạn để ở máy chủ B (nếu cả 2 để cùng một chỗ thì chỉ là 1 trường hợp đặc biệt, và vẫn áp dụng bình thường). Địa chỉ "chính thức" để nghe nhạc vẫn đặt tại A (để sau này bạn có chuyển host nhạc cũng đỡ mất công sửa lại) nhưng luôn luôn hướng đến nhạc ở host B. Cách làm như sau: khi ai đó muốn nghe 1 bài hát, ở A bạn sẽ cấp quyền bằng cách "đi cửa sau" để nói trước rằng "có 1 người đặc điểm thế này, thế này... đến nghe nhạc". Sau đó, khi người này vào nghe, do đã được thông báo trước, A kiểm tra và thấy ổn liền chuyển người nghe đến một địa chỉ khác ở B. Vì địa chỉ ở B không cố định nên không ai có thể lấy link được. Hãy xem sơ đồ dưới đây Tiếp theo là cách làm cụ thể 1. Ở máy chủ chính (A)Ở mỗi trang nghe nhạc, bạn link đến một tập tin hình ảnh đặc biệt (thực chất là script PHP) có nhiệm vụ kiểm tra và cấp phép nghe nhạc. Trong cái script đó làm công việc sau:
Bạn phải đặt số lần được nghe là 3 (thậm chí đặt là 5 cũng được, miễn đừng đặt là 100 Sau phần "đi cửa sau" thì đến phần cửa chính. Bạn dùng mod_rewrite của Apache để chuyển tất cả địa chỉ nhạc (địa chỉ ảo, ở A) đến 1 script PHP thứ 2 để kiểm duyệt. Script PHP này (được gọi khi WMP đọc file nhạc) chỉ đơn giản xem IP của bạn có trong danh sách được phép hay không, nếu có và số lần còn được phép lớn hơn 0 thì giảm số lần đi 1 và chuyển đến địa chỉ nhạc ở B, nếu không đúng thì chuyển đến một bài midi nào đó cho vui Với cái gọi là "danh sách được phép" ở trên, bạn có thể lưu trong tập tin văn bản thông thường, và dùng các hàm serialize()/unserialize() cho tiện. Nếu là PHP5 thì bạn có thể dùng SQLite cũng rất tốt. 2. Ở máy chủ nhạc (B)Ở B, bạn có 3 giải pháp để tạo địa chỉ thay đổi bằng một cronjob:
2 cách đầu có 1 ưu điểm: có thể tạo nhiều địa chỉ ảo cho 1 địa chỉ thật (vì sao là ưu điểm thì bạn sẽ biết ngay dưới đây). Tôi sẽ dùng cách 1 vì nó đơn giản nhất (và bởi vì modRewrite is your friend). Bạn tạo ở B thư mục khongcanbiet (bí mật) và để nhạc trong đó, thư mục này cố định nhưng có trời mới biết được sự tồn tại của nó. Sau đó bạn dùng modRewrite để chuyển các địa chỉ khác về địa chỉ này. "Các địa chỉ khác" ở đây thí dụ như bạn dựa vào thời gian hiện tại: Mã lệnh (PHP) md5(gmdate('H j d z', time()+$adjust.'you are stupid'); Chuỗi md5 ở trên thay đổi theo ngày/giờ hiện tại, bạn chú ý biến $adjust. Để hoạt động tốt nhất, bạn tạo 3 địa chỉ ảo dụa trên giờ cách đây 1h, giờ hiện tại và giờ sau đó 1h đều trỏ đến tập tin nhạc. Cần làm như vậy vì có thể giờ ở A và B không đồng bộ (chênh nhau vài phút). Dưới đây là một tập tin .htaccess điển hình ở B: Mã lệnh RewriteEngine On ErrorDocument 400 http://B/not_found.mid ErrorDocument 403 http://B/not_found.mid ErrorDocument 404 http://B/not_found.mid RewriteRule ^c730dd9effe9bf443ded1bf39270b3a9/(.*)$ khongcanbiet/$1 RewriteRule ^e35e91acba8b14cde08d37577668d41f/(.*)$ khongcanbiet/$1 RewriteRule ^ee0c1fd0f7cd04a7925ca68b50c8016c/(.*)$ khongcanbiet/$1 Phải đặt các ErrorDocument vì nếu không, khi nhập vào địa chỉ sai, thông báo lỗi mặc định của Apache sẽ tiết lộ địa chỉ thật thì toi Chú ý rằng ở A bạn cũng biết quy tắc đổi tên này, để chuyển hướng (redirect) đến B cho đúng. Bài viết chấm dứt, rất mong nhận được các góp ý. Chúc bạn thành công! Bài viết liên quan
Bài viết khác
Bình luận
(3)
You must be logged in to a comment. Please register if you do not have an account yet.
|
|
| < Trước | Tiếp > |
|---|
Đọc báo giùm bạn
Core i7 Extreme Edition 965 được overclock lên 5,5 GHz
Các mạng di động tự coi mình là nhất
Ông Trương Gia Bình thôi làm Chủ tịch FPT Software
PDFTK Builder - Tiện ích chỉnh sửa file PDF
Ứng dụng Gmail Gadget trên Windows
Netbook thống trị Amazon
Cổ phiếu Yahoo tăng mạnh vì tin đồn sáp nhập
Bẻ khoá iPhone 3G kiểu... Việt Nam
Giá cước mới cho dịch vụ điện thoại cố định
Sẽ có Trung tâm giao dịch và điều hành Viễn thông Quốc gia
Đang được quan tâm
Tại sao Netbook vẫn còn kém hấp dẫn người dùng?
Lộ diện Nokia N97 - smartphone đầu bảng của Nokia
Đập hộp Meizu M8 - bản sao của iPhone
3 phương án cập nhật HĐH Windows tiện dụng
5 biện pháp khắc phục điểm ảnh lỗi trên màn hình
Newton - “ông tổ” của iPhone
Anh cấm quảng cáo iPhone 3G
22 ứng dụng miễn phí hàng đầu dành cho Windows Mobile
Vista SP2 sẽ ra mắt trong tháng 4/2009
“Google Trung Quốc” sắp bị kiện tập thể
Mây từ khóa công nghệ
Sự kiện và Bình luận
Trận chiến của các hệ điều hành năm 2008
“New 7 Wonders” - các phương tiện truyền thông Việt Nam bị lừa ?
BKAV vi phạm bản quyền phần mềm ?
Công nghệ số sinh ra thế hệ ít kiến thức nhất?
Auto-Update for BKAV: Liệu có vi phạm bản quyền ?
Nguyên nhân S-fone tăng giá gói cước Forever Couple !
TS Nguyễn Quang A: Nhà khoa học... đi buôn



). Bài viết này tôi thực hiện vào năm 2004, sẽ từ từ sửa lại theo tình hình thực tế.

tiến hành ở 2 nơi
10 ứng dụng thiết yếu trên nền tảng Mac dành cho blogger
Dịch vụ Video chat miễn phí với Gmail
5 công cụ ghi đĩa CD, DVD tốt nhất
10 thủ thuật tăng tốc duyệt web
Những tính năng mở rộng độc đáo của Gmail
Top 10 ứng dụng sửa ảnh trực tuyến cần quan tâm





