【发布时间】:2018-10-21 07:22:45
【问题描述】:
我使用 NSUpdate 从 PHP 更新 DNS 记录
一切正常,但当我想要 更新/添加 TXT 记录时出现问题
添加文本记录并不像 SRV OF SPF 那样难
不 :) rlly
问题: 尝试添加诸如“这是一条 TXT 记录”之类的内容
在将其从 PHP 发送到 NSUPDATE 之后(与其他记录一起使用)
绑定 DNS 服务器得到这个: 域 IN TXT“This”“IS”“an”“TXT”“Record” 但这是错误的!检查了我的代码,看着周围..它不起作用..
代码:
<?php
if ($txt_true) {
$ttl2 = '36';
// TXT string could be almost anything, just make sure it's quoted.
// $txt_var = str_replace("'", "", $txt_var);
// $txt_var = str_replace('"', "", $txt_var);
//$txt_var = '"'. $txt_var.'"';
$data .= "update add ".$sub.".".$domain.". ".$ttl2." IN TXT ".$txt_var."\n";
}
这将转到 NSupdate ( data + nsupdate 等...) dotn follow 已注释掉的块
这里:
function dns_update ($id_domain,$mydata) {
global $nsupdate;
if (domain_exists($id_domain)) {
$infos = domain_infos($id_domain);
$domain = $infos['domain'];
$dnsip = $infos['dnsip'];
$key = $infos['key'];
if ($key != '') { $add = ' -y '.$key; }
$data = "server $dnsip\n";
$data .= "zone $domain\n";
$data .= $mydata;
$data .= "\n";
$result = `echo "$data" | $nsupdate$add`;
return $result;
} else {
return false;
}
}
和引用TXT记录发生在
HTML => INPUT => DO => 写入数据库和函数 => NSUPDATE
【问题讨论】:
-
需要补充:在SQL DB中字符串写入正确