BIND结合NGINX+PHP实现DNS服务器URL转发 您所在的位置:网站首页 nginx实现全站请求转发的过程是 BIND结合NGINX+PHP实现DNS服务器URL转发

BIND结合NGINX+PHP实现DNS服务器URL转发

#BIND结合NGINX+PHP实现DNS服务器URL转发| 来源: 网络整理| 查看: 265

前几天在公司分享会偶尔说起DNS,突然提到域名运营商提供的URL转发功能,即将指定的域名转发到相关域名,且可以在地址栏显示或隐藏目标URL。争论了很久,很多同学都认为是DNS服务器自身提供了这个功能。众所周知,DNS服务器只提供域名的解析功能,而URL转发是HTTP范畴,以下详细说明下我自己的实现原理及过程。

原理

大多数域名运营商都会提供URL转发(国内此功能需要备案和审核)功能,分显示和隐藏两种。我们在实现的过程中分两个环节,即DNS和HTTP。一个URL转发记录对应DNS服务器两条记录,分别为A或CNAME记录和TXT记录。A或CNAME记录解析到自己的HTTP服务器,以用于后面处理URL转发,这条记录对用户隐藏。TXT记录是用户在操作界面填写的URL转发目标地址和类型。DNS解析完成之后交由HTTP服务器,可以用任何服务端语言编写。

实现过程 环境说明 操作系统:CentOS 6(Vagrant) DNS服务器:BIND-9.8.2 (yum) HTTP服务端:NGINX+PHP-FPM-5.3 (yum) 测试域名:ninjacn.com DNS服务器

DNS服务器由BIND搭建,通过yum直接安装即可。下面截取主要的配置以供大家理解:

截取/etc/named.conf options { listen-on port 53 { 127.0.0.1; }; directory "/var/named"; }; zone "ninjacn.com" IN { type master; file "ninjacn.com.zone"; }; 截取/var/named/ninjacn.com.zone


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有