我正在尝试使用 cPanel API2 编辑其中一个区域文件的 A 记录,但遇到了一个奇怪的问题。它不是替换条目而是添加一个新条目。我对API的调用如下:
https://1.2.3.4:2087/json-api/editzonerecord?domain=mydomain.com&line=13&name=mydomain.com.&address=1.2.3.5&type=A&ttl=300
因此,不是将第 13 行(包含 A 记录)从 1.2.3.4 替换为 1.2.3.5,而是在原始条目之上添加另一个条目。所以区域文件最终看起来像这样:
(..)
(13) mydomain.com. 300 IN A 1.2.3.5
(14) mydomain.com. 14400 IN A 1.2.3.4
(..)
我已按照 http://docs.cpanel.net/twiki/bin/view/SoftwareDevelopmentKit/EditZoneRecord 的说明进行操作
最佳答案
cPanel 的响应:
如果您只是尝试编辑记录的 IP,则可以省略名称部分。
我还发现,如果您包含名称选项并且有错误的行,或者名称与该行上的记录不匹配,它将为记录创建一个新行。我使用命令 cat -n/var/named/example.com.db
来检索区域的行号。
下面是我使用的 api 命令,它成功编辑了域的 A 记录。
/json-api/editzonerecord?domain=example.com&line=13&&address=4.3.2.1&type=A&ttl=300
下面是编辑后我的区域文件:
1 ; cPanel first:11.32.4.15 (update_time):1348223931 Cpanel::ZoneFile::VERSION:1.3 hostname:cpanel.test.server latest:11.32.4.15
2 ; Zone file for example.com
3 $TTL 14400
4 example.com. 86400 IN SOA ns1.cpcitizenk.com. citizen.cpanel.net. (
5 2012092110 ;Serial Number
6 86400 ;refresh
7 7200 ;retry
8 3600000 ;expire
9 86400 )
10
11 example.com. 86400 IN NS ns1.cpcitizenk.com.
12 example.com. 86400 IN NS ns2.cpcitizenk.com.
13 example.com. 300 IN A 4.3.2.1
14 localhost 14400 IN A 127.0.0.1
15 example.com. 14400 IN MX 0 example.com.
16 mail 300 IN A 1.2.3.4
17 www 14400 IN CNAME example.com.
18 ftp 14400 IN A 1.2.3.4
19 cpanel 14400 IN A 1.2.3.4
20 whm 14400 IN A 1.2.3.4
21 webmail 14400 IN A 1.2.3.4
22 webdisk 14400 IN A 1.2.3.4
关于php - cPanel JSON API2 editzone记录问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12506363/