วิธีเขียนป้องกันการโดนดึงรูปไปใช้ (.htaccess)
พอดีมีโอกาสได้เขียน htaccess เลยเอามาโพสแนะนำไว้ให้ครับ สำหรับคนที่ไม่อยากให้คนอื่นดึงรูปของเราไปใช้ที่อื่น การดึงรูปที่ผมกล่าวนี้หมายถึง ใช้ url เป็นของเว็บเราเหมือนเดิม
ซึ่งหากเว็บที่โดนกระทำเช่นนี้จะมีปัญหาในเรื่องของ Bandwidth ครับเพราะการดึงรูปไปใช้จะทำให้เว็บเราโดนใช้ Bandwidth เยอะตามไปด้วยครับ การดึงรูปในบางความหมายอาจจะเป็น save รูปจากเว็บเราไปอัพโหลดเว็บเขา แบบนี้ไม่เกี่ยวกับ Bandwidth นะครับ เดี่ยวจะงงกันเสียก่อน
วิธีการเขียนอาจจะเขียนได้หลายทาง แต่สำหรับตอนนี้ผมขอแนะนำเฉพาะการใช้ .htaccess ในการป้องกันการเรียกไฟล์ในเว็บของเราจากที่อื่นครับ สำหรับโฮสใหนที่ไม่สามารถใช้งาน .htaccess ได้ในส่วนนี้ก็จะทำไม่ได้นะคับ ดังนั้นท่านต้องแน่ใจเสียก่อนว่า host ของท่านเปิดให้สามารถเขียน .htaccess ได้หรือไม่
มาดูตัว code ก่อนนะครับ
1 RewriteEngine On
2 RewriteCond %{HTTP_REFERER} !^http://(.+\.)?yourwebsite\.com/ [NC]
3 RewriteCond %{HTTP_REFERER} !^$
4 RewriteRule .*\.(jpe?g|gif|png)$ http://www.goto-images.gif [NC,R,L]
สำหรับตัวอย่างนี้ จะตรวจสอบจากค่า HTTP_REFERER ครับหรือตัวที่ทำการ request รูปนั้นๆเข้ามาครับว่าทำการเรียกมาจากที่แห่งหนใดครับ โดยหากไม่ได้ทำการเรียกมาจากเว็บของเราเอง (yourwebsite.com) ก็จะให้รูปที่แสดงผลกลายเป็นรูป chang-goto-images-url แทนครับ ตัวอย่างผมใส่หลอกๆไว้นะครับไม่มีรูปอยู่จริง ตอนท่านจะเอาไปใช้ก็ประยุกต์ ต่อเอานะครับ
แล้วจะเอา .htaccess ไปใส่ไว้ที่ใหน
ง่ายๆก็ เอาไปใส่ไว้ใน folder path ที่เราต้องการจะป้องกันครับ หากเอาไปใส่ไว้ใน public_html ก็จะถือว่าทั้งเว็บเลยก็ว่าได้ครับ แต่ผมไม่แนะนำให้ใส่แบบนั้นนะครับ
กรณีที่ต้องการป้องกันเพียงแค่ folder images ก็เอาไปใส่ไว้ใน folder นั้นๆครับ images/.htaccess
พอดีนึกขึ้นได้ครับ ข้อควรระวัง
บางกรณีเรามีการแลกลิ้งค์เพื่อนบ้านกันครับ อาจจะมีการแลกแบนเนอร์กัน หรือ ทำแบนเนอร์แล้วส่งลิ้งค์ไปวางโฆษณาที่อื่น หรืออย่างไรก็ตามจะทำให้ รูปเหล่านั้นแสดงผลผิดตามไปด้วยนะครับ ดังนั้นจะวางไฟล์ไว้ที่ path ใหนก็ต้องระวังกันหน่อยนะครับ
หรือท่านอาจจะเข้าไปอ่านข้อมูลเพิ่มเติมได้ตามลิ้งค์ด้านล่างนี้นะครับ
You are not allowed to view links.
Register or
Login You are not allowed to view links.
Register or
Login