Saturday, July 13, 2013

Chống hotlink bằng .htaccess - giúp tránh bị câu mất băng thông

Chống hotlink bằng .htaccess

Đi hotlink tức là lồng nội dung của người khác vào trang web của mình, nếu một trang web nào đó hotlink từ trang của bạn thì họ sẽ đỡ tốn băng thông, còn bạn thì ngược lại - bị mất oan.

Thực ra nếu host của bạn đủ mạnh thì cho họ hotlink cũng không sao - bạn thấy các trang lớn như vnexpress, dantri, vietnamnet đều cho hotlink hình ảnh thoải mái và điều ấy có khi còn tốt ở mức độ nào đó về mặt quảng bá... nhưng vấn đề là đa số người đang đọc bài viết này hosting lại không mạnh :) Bạn không muốn người khác rút bớt băng thông của mình - cái vốn đã eo hẹp sẵn rồi.

Điểm lợi của người đi hotlink đã nói ở đầu bài, nhưng điểm bất lợi là gì:

  • Người đi hotlink là người phụ thuộc vào hosting của người khác, nếu hosting đó có vấn đề gì, thì dĩ nhiên nội dung hotlink cũng ảnh hưởng.
  • SEO kém hơn: Các máy tìm kiếm như Google thừa biết đó không phải là nội dung chính chủ, và vì thế khó lên top.
  • Nếu người bị holink áp dụng cách chống hotlink, thì tất cả những bài viết của người đi hotlink sẽ bị ảnh hưởng.

Điểm lợi của người chống hotlink:

  • Dễ thấy nhất là bạn đỡ mất băng thông mà người đi hotlink lấy của bạn.
  • Bảo vệ bản quyền tốt hơn: người đi hot link thay vì chỉ dùng đường dẫn của bạn, giờ họ phải tự up nội dung, như vậy sẽ mất thời gian và công sức hơn, hạn chế phần nào tình trạng copy - paste.

Giờ là đoạn code chống hollink:


# BEGIN anti-hotlink
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?trang-web-cua-ban.com [NC]
RewriteRule \.(jpg|jpeg|png|gif|bmp|js|css|html|htm)$ https://lh3.googleusercontent.com/-EpY2imp1iME/UPKfFVlDZsI/AAAAAAAAAH8/yJHKs27MlLs/s288/Lon-dan.JPG [NC,R,L]
# END anti-hotlink

Bạn copy nguyên đoạn code trên vào file .htaccess (tìm file này trên host của bạn - tải nó về rồi chỉnh sửa lại - sau đó lại up lên)

  • RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?trang-web-cua-ban.com Chính là URL trang web của bạn.
  • RewriteRule \.(jpg|jpeg|png|gif|bmp|js|css|html|htm)$ là các file mà bạn muốn chống bị hotlink, quan trọng nhất là mấy định dạng ảnh như jpg, png, gif hay bmp.
  • https://lh3.googleusercontent.com/-EpY2imp1iME/UPKfFVlDZsI/AAAAAAAAAH8/yJHKs27MlLs/s288/Lon-dan.JPG Cái này chính là đường dẫn mà bạn muốn thay thế. Nghĩa là thay vì họ sẽ nhận được nội dung hotlink, họ sẽ chỉ nhận được nội dung của đường link trên. Và đường dẫn này dĩ nhiên bạn phải lấy hình ảnh không phải trên host của bạn (lấy trên host của chính bạn thì còn chống hotlink làm gì nữa!). Đơn giản là bạn up cái ảnh cần thay thế lên dịch vụ chia sẻ ảnh miễn phí (Picasa, Flickr...) rồi lấy link ảnh.

Một số hosting họ có cung cấp chức năng chống hotlink ngay trên giao diện quản trị host, nếu host của bạn có thì bạn nên làm vì nó dễ hơn mấy dòng code ở trên:

Hosting có chức năng chống hotlink
Hosting có chức năng chống hotlink
Từ khóa tìm kiếm: Anti hotlink htaccess. Tham khảo thêm: http://www.htaccesstools.com/hotlink-protection/

P/S: Trang Blog Mạng Lưới Toàn Cầu mình dùng Blogspot nên mình không chống hotlink (vì không can thiệp vào file .htaccess được)

No comments:

Post a Comment