我的网络托管服务允许设置自定义名称服务器。例如,如果我的网站是http://www.example.com/,我可以设置自定义名称服务器ns1.example.com和ns2.example.com。
当其他域名使用我的自定义名称服务器时,如何将其访问者重定向到我网站的特定页面,并通过使用查询字符串记住源域名?例如,如果域名randomdomainname.example使用我的自定义名称服务器,如何将其用户重定向到http://www.example.com/welcome.php?source=randomdomainname.example?
发布于 2018-11-01 18:28:55
某些主机允许您为域配置的“自定义名称服务器”通常只是主机主名称服务器的别名,指向相同的IP地址。正如@Stephen在注释中指出的那样,这要求您手动配置指向此IP地址的胶水记录(尽管主机可以为您配置,如果注册服务器和主机是同一个地址的话)。
自定义名称服务器的主要原因是混淆真正的DNS提供程序/主机。这是一个“白色标签”解决方案,主要针对那些想要“隐藏”真正的主机的经销商,让他们看起来像是真正的供应商。然而,这只是表面的一层模糊,因为任何人都可以对IP地址进行反向查找以找到真正的提供者。
使用这种性质的“自定义名称服务器”的另一个警告是,如果主机名称服务器的IP地址一直在改变,那么您将需要手动更新胶水记录。
当其他域名使用我的自定义名称服务器时,如何将他们的访问者重定向到我网站的特定页面?
正如@Patrick在评论中提到的,这些“自定义名称服务器”与重定向无关。NAMESERVER (“自定义”与否)简单地通知请求用户代理发送请求时使用的IP地址。这不一定与你的域名或你的网站有任何关系。
还记得使用查询字符串的源域名吗?
为了让randomdomainname.example映射到您的托管帐户(即。example.com)您需要额外的指令(例如。ServerAlias)在服务器配置中,以便您的帐户响应对此域的请求。例如,在cPanel中,这是一个"Addon域“或" Domain”。
在您的帐户中创建了Addon域之后,您就可以检查Host HTTP请求头($_SREVER['HTTP_HOST']中的D8),以确定哪个主机已经被请求(不需要使用查询字符串或创建重定向)。
但是,如果randomdomainname.example指向服务器上的一个完全不同的帐户(记住NAMESERVER只告诉您帐户驻留在哪个服务器上),那么任何重定向到example.com的方法都需要在该其他帐户上创建,就像创建任何重定向一样(通过返回3xx状态和一个Location头)。
https://webmasters.stackexchange.com/questions/118811
复制相似问题