สอบถามหน่อยครับ ผมจะ php hotlink protection

สำหรับผู้ที่ เริ่มต้น Programming - PHP มีอะไร แนะนำ หรือข้อสงสัยต้องบอร์ด นี้ คนที่มีความรู้ แบ่งปันคนอื่นบ้างนะ ปัญหาการเขียนโปรแกรม แบบ OOP Session Cookies php network

Moderator: mindphp, ผู้ดูแลกระดาน

koninw
PHP Newbie
PHP Newbie
โพสต์: 5
ลงทะเบียนเมื่อ: 27/11/2012 12:52 am

สอบถามหน่อยครับ ผมจะ php hotlink protection

โพสต์ที่ยังไม่ได้อ่าน โดย koninw »

ควรจะเขียนโค้ดยังไงครับ

กันคนอื่นเรียกไฟล์ไปใช้ครับ

เป็นไฟล์ mp4 flv ครับ
ภาพประจำตัวสมาชิก
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
โพสต์: 41266
ลงทะเบียนเมื่อ: 22/09/2008 6:18 pm
ติดต่อ:

Re: สอบถามหน่อยครับ ผมจะ php hotlink protection

โพสต์ที่ยังไม่ได้อ่าน โดย mindphp »

ทำได้หลายวิธีนะครับ
1. ใช้ .htaccess เข้ามาช่วยครับ
ประมาณนี้

โค้ด: เลือกทั้งหมด

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?yourdomain.com [NC]
RewriteRule \.(jpg|jpeg|png|gif|mp3|flv|)$ - [NC,F,L]
2. เขียน php ไปอ่านไฟล์ mp3 เอง แล้วเช็ค referrer ว่าถ้าไม่ได้มาจากเว็บ เราไม่ได้ต้องให้ส่งข้อมูลออกไป เอาประมาณนี้

โค้ด: เลือกทั้งหมด

<?php
$dir='folder_to_your_file/';
 if ((!$file=realpath($dir.$_GET['file']))
     || strpos($file,realpath($dir))!==0 || substr($file,-4)=='.php'){
    header('HTTP/1.0 404 Not Found');
    exit();
  }
  $ref=$_SERVER['HTTP_REFERER'];
  if (strpos($ref,'https://www.mindphp.com/')===0 || strpos($ref,'http')!==0){
    $mime=array(
      'jpg'=>'image/jpeg',
      'png'=>'image/png',
      'mid'=>'audio/x-midi',
      'wav'=>'audio/x-wav'
         'mp3'=>'audio/mp3'
    );
    $stat=stat($file);
    header('Content-Type: '.$mime[substr($file,-3)]);
    header('Content-Length: '.$stat[7]);
    header('Last-Modified: '.gmdate('D, d M Y H:i:s',$stat[9]).' GMT');
    readfile($file);
    exit();
  }
  header('Pragma: no-cache');
  header('Cache-Control: no-cache, no-store, must-revalidate');
  include($file.'.php');
  ?>
ส่วน flv ไม่แน่ใจว่า mime type เป็นอะไรนะครับ

3.สร้างไฟล์ flash เพื่อเล่นไฟล์
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
koninw
PHP Newbie
PHP Newbie
โพสต์: 5
ลงทะเบียนเมื่อ: 27/11/2012 12:52 am

Re: สอบถามหน่อยครับ ผมจะ php hotlink protection

โพสต์ที่ยังไม่ได้อ่าน โดย koninw »

ครับ ขอบคุณมากครับ ถ้าาใช้ .htaccess มันจะบล็อคเว็บตัวเองครับ แต่สามารถดาวน์โหลดได้ แต่ไม่สามารถดูได้
koninw
PHP Newbie
PHP Newbie
โพสต์: 5
ลงทะเบียนเมื่อ: 27/11/2012 12:52 am

Re: สอบถามหน่อยครับ ผมจะ php hotlink protection

โพสต์ที่ยังไม่ได้อ่าน โดย koninw »

Mime type: video/x-flv

ใช่หรือป่าวครับ แหะๆ
ภาพประจำตัวสมาชิก
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
โพสต์: 41266
ลงทะเบียนเมื่อ: 22/09/2008 6:18 pm
ติดต่อ:

Re: สอบถามหน่อยครับ ผมจะ php hotlink protection

โพสต์ที่ยังไม่ได้อ่าน โดย mindphp »

koninw เขียน:ครับ ขอบคุณมากครับ ถ้าาใช้ .htaccess มันจะบล็อคเว็บตัวเองครับ แต่สามารถดาวน์โหลดได้ แต่ไม่สามารถดูได้
มันจะบล็อคเว็บตัวเอง
:?: :?:
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
ตอบกลับโพส
  • Similar Topics
    ตอบกลับ
    แสดง
    โพสต์ล่าสุด

ผู้ใช้งานขณะนี้

สมาชิกกำลังดูบอร์ดนี้: ไม่มีสมาชิกใหม่ และบุคลทั่วไป 8