สวัสดีครับ วันนี้ผมเจอกรณีที่คนเข้าเว็บมาด้วย Domain อื่นๆ ที่ไม่ใช่ของเรา แต่เป็นหน้าเว็บเราเฉยเลย ทําให้ Domain อื่นๆของใครก็ไม่รู้ สวมรอยเป็นเว็บเราได้อย่างเช่นกรณีนี้
เป็นเว็บของผมเองครับ แต่ใครก็ไม่รู้ tinycolor.com ทําการ point มาที่เว็บผม โดย น่าจะ point มาที่ ip ของ server ก็เป็นอย่างที่เห็นในรูป T_T ผมลองหาข้อมูลในการแก้ปัญหานี้+คําแนะนําของพี่ artit-k.com สรุปได้ว่า แก้ไขค่า config ของ nginx (อยู่ที่ file “/etc/nginx/nginx.conf”) เพื่อบังคับให้ Request ไดๆ ก็ตามมาที่ port 80 ถ้าไม่ตรงกับ Domain ที่เรากําหนดไว้ ให้ redirect 301 ไปยัง url ที่เรากําหนดไว้ หรือไม่ตอบกลับเลยก็ได้ ตามตัวอย่างค่า config ดังนี้
http {
...
# For some invalid name or ip
server {
listen 80 default_server;
server_name _; # some invalid name that won't match anything
return 301 ;
}
include /etc/nginx/conf.d/*.conf;
}
จุดสําคัญอยู่ที่ return 301 ; ความหมายคือ redirect 301 ไปที่ ซึ่ง 301 ก็คือ response code ซึ่ง 301 หมายความว่า ย้าย domain ไปที่… ศึกษา response code เพิ่มเติมที่ en.wikipedia.org/wiki/List_of_HTTP_status_codes
ถ้าไม่ต้องการให้ตอบกลับเลยก็ใช้ return 444; ได้เลยครับ ซึ่ง 444 เป็น response code หมายถึงไม่ตอบอะไรกลับไปเลย