कुछ स्केचरी वेबमास्टर्स ने अतीत में अपने आईपी पते के लिए अपने डोमेन नाम को हल करने के लिए DNS प्रविष्टियां स्थापित की हैं। यह कोई गलती नहीं थी, क्योंकि जब हमने एक विशिष्ट डोमेन नाम के लिए काउंटरमेसर लागू किए थे, तो एक नया डोमेन नाम हमारे आईपी पते पर हल होना शुरू हुआ। ये दोनों दुष्ट डोमेन नाम एक ही व्यक्ति के लिए पंजीकृत थे। मेरे पास संदेह करने का अतिरिक्त कारण है कि यह नापाक उद्देश्यों के लिए एक जानबूझकर दुरुपयोग था। मेरी साइट प्रसिद्ध सार्वजनिक कानून प्रवर्तन साइट है।
मुझे यकीन नहीं है कि अपराधी के इरादे क्या हैं। यह मेरे आईपी पते पर अपने डोमेन को पार्क करके खोज इंजन रैंक प्राप्त करने के लिए हो सकता है। या इसमें कुछ क्रॉस-साइट स्क्रिप्टिंग या IFrame / जावास्क्रिप्ट / फ्लैश सुरक्षा हैक प्रयास शामिल हो सकते हैं। लब्बोलुआब यह था कि उन्होंने दो अलग-अलग डोमेन नामों को अलग-अलग समय पर इंगित किया, मेरे वेबसर्वर के पते पर।
उनके दोनों डोमेन नाम GoDaddy के साथ पंजीकृत किए गए थे, इसलिए मैंने उनके दुर्व्यवहार की आशंकाओं को रिपोर्ट किया कि उनके DNS सर्वरों का उपयोग हम एक संदिग्ध अभ्यास के लिए कर रहे हैं।
पहले तो मैंने अपने होम पेज पर 404 के साथ जवाब देने के लिए कोड जोड़ा - यदि URL में HTTP_HOST अन्य लोगों का डोमेन नाम था, तो मिली त्रुटि नहीं। मैंने ऐसा इसलिए किया क्योंकि मुझे लगा कि यह उसकी गलती थी। लेकिन यह जानने के बाद कि एक ही व्यक्ति ने बाद में हमारे आईपी पते पर एक और डोमेन नाम बताया, मुझे एक बेहतर समाधान खोजना पड़ा।
बेहतर समाधान ... स्क्रिप्ट के लिए उदाहरण 2 देखें।
मैंने हमारे मान्य डोमेन नामों के लिए स्पष्ट होस्ट हेडर का उपयोग करने के लिए Microsoft IIS कॉन्फ़िगर किया है। फिर मैंने IIS में एक नई वेबसाइट बनाई जिसमें होस्ट हेडर का उपयोग नहीं किया गया, और इसे "दुष्ट डोमेन नाम" लेबल दिया। मेरे वेबसर्वर को हल करने वाले किसी भी डोमेन नाम जो मेरे स्पष्ट रूप से परिभाषित होस्ट हेडर में से एक से मेल खाते हैं, उन्हें सही सामग्री के लिए अपना रास्ता मिल जाएगा। लेकिन होस्ट हेडर सेटिंग में कोई भी डोमेन नाम परिभाषित नहीं है, दुष्ट डोमेन नाम साइट पर जाता है। और उस दुष्ट डोमेन नाम साइट के लिए डिफ़ॉल्ट होम पेज में Google.com के अनुरोध को पुनर्निर्देशित करते हुए "301 - मूव्ड परमानेंटली" प्रतिक्रिया भेजने के लिए एक स्क्रिप्ट है।
मैंने तय किया कि यदि खोज इंजन के परिणामों को जहर देने या रैंकिंग चुराने का इरादा है, तो Google अपने ट्रैफ़िक को भेजने के लिए जगह हो सकती है, और इस तरह Google मकड़ियों से अपनी साइट को बीमार कर देगा।
हमारे आईपी पते को हल करने के लिए सेट अज्ञात डोमेन नामों को पकड़ने के लिए एक वेबसाइट साइट स्थापित करने का एक अतिरिक्त लाभ यह है कि मैं अब गतिविधि लॉग इन कर सकता हूं और देख सकता हूं कि यह कितनी बार होता है। यह वैध डोमेन नामों की जांच करने और आवश्यक होने पर पुनर्निर्देशित करने के लिए व्यक्तिगत पृष्ठों में कोड डालने से साइट परीक्षण को आसान बनाता है।
यहाँ क्लासिक ASP का उपयोग कर थोस के लिए एक कोड स्निपिट ...
उदाहरण 1. पृष्ठ स्तर डोमेन नाम अस्वीकृति
अनजाने डोमेन नामों को अस्वीकार करने के लिए इस कोड को ASP होम पेज में डालें
If instr(1, UCase(Request.ServerVariables("HTTP_HOST")), "OURSITE.COM") < 1 Then
Response.Status = "404 Not Found"
Response.Write(response.Status)
Response.End
End If
उदाहरण 2 - IIS स्तर डोमेन नाम अस्वीकृति
<%@ Language="VBScript" CodePage=65001%>
<% option explicit%>
<%
'
' Some fraudulent webmasters have in the past set up DNS entries to resolve their domain names to our IP address.
' This file is a counter measure to prevent other domain names from resolving to our site.
' The intent of the fraud may be to gain search engine ranking status for their domain name by pointing it to a
' well known site. Or there could be more going on such as cross-site scripting attacks...
' By using IIS host headers, we explicitly resolve domain names. Any host headers that are not defined in IIS
' land on the Rogue Domain names website which servies up a 301 - Moved Permanently page that redirects to Google.
'--------------------------------------------------------------------------------------------------------------------
Response.Buffer = True
If instr(1, UCase(Request.ServerVariables("HTTP_HOST")), "OURSITE.COM") < 1 Then
Response.Status = "301 Moved Permanently"
Response.AddHeader "location", "http://www.google.com/"
Response.End
End If
%>