php开发的ddns,动态域名DDNS实现

利用php重定向功能实现DDNS。

在openwrt上配置自定义的ddns,定时上报路由器的动态IP信息

1

将IP信息定时发送到http://xxx.xxx.net/updateip.php

在服务器对用户名和密码进行验证,验证成功后将数据库中的IP信息替换成上报的IP信息:

$name=$_GET['name'];

$pass=$_GET['pass'];

$myip=$_GET['myip'];

if($myip)

{

$conn=mysql_connect("localhost", "root", "xxxx");

mysql_query("set names 'utf8' ");

mysql_query("set character_set_client=utf8");

mysql_query("set character_set_results=utf8");

$result=mysql_db_query("mydns", "SELECT * FROM `info` where name='".$name."'", $conn);

// 获取查询结果

$row=mysql_fetch_row($result);

if(!$row)

{

// echo 'user not found';

return;

}

if($row[1]==$pass)

{

$update="UPDATE `info` SET `ip` = '".$myip."' WHERE name = '".$name."'";

$result=mysql_db_query("mydns",$update, $conn);

//echo 'ok|'. $update;

}

else

{

//echo 'pass err';

}

}

?>

先用mysql建立数据库mydns,数据表info,三个字段name、pass、ip,都为文本型,新增一条记录:test,xxx,1.1.1.1

在访问http://xxx.xxx.net时,利用PHP读取数据库中的IP信息,重定向到新的IP地址:

$val=$_SERVER['HTTP_HOST'];

if($val=="xxx.xxx.net")

{

$conn=mysql_connect("localhost", "root", "xxx");

mysql_query("set names 'utf8' ");

mysql_query("set character_set_client=utf8");

mysql_query("set character_set_results=utf8");

$result=mysql_db_query("mydns", "SELECT * FROM `info` where name='test'", $conn);

// 获取查询结果

$row=mysql_fetch_row($result);

if($row)

{

header("Location: http://".$row[2]."\n");

}

}

?>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值