然后运行
/usr/share/podclient/initconf.php -u **** -p ****
初始化一份配置文件,存到
/etc/podclientd.conf
中,手动修改必须的参数,再启动之.
phppod是我开发的一套unix/linux/mac下的动态域名方案。这是一个dnspod.com的API的客端.用户只需要配置/etc /podclientd.conf这个配置文件,即可随时更新dnspod上的ip信息.[这个项目一没有高性能,二也不功能强大...,就是方便实用吧.]
项目托管在http://code.google.com/p/phppod/.
项目的新主页:
http://github.com/xurenlu/phppod/
这是一个花生壳的替代方案。花生壳的特点是各种客户端等都很齐全,不少路由器也内置了花生壳的方案。但缺点也很明显,不能使有花生壳来绑定顶级域名,个数也有限制。而dnspod.com的服务却可以让你添加n个顶级域名,每个顶级域名下可添加数个子域名。另外,dnspod.com的服务可以依据线路选择解析到不同的IP上。
DNSPOD已经管理着数十万个站点的dns,是一个可靠的目前[至少到目前为止].
使用方法:
1.先通过dnspod.com的网站注册,将您的域名的dns解析转移给dnspod.com;
2.在您的机器上安装phppod.
如果是ubuntu/debian系列,请从项目主页下载deb包:
dpkg -i phppod-*.deb
如果是其他linux/unix版本,请从项目主页下载src包,按照README的说明来安装。:
<pre>
$cd phppod-1.0.0
$cd pkg
$sudo make install
</pre>
来安装.
3.配置:
请修改/etc/podclientd.conf文件.
4.运行:
/usr/bin/podclient -c /etc/podclientd.conf >/var/log/podclient.log &
php /usr/bin/podclient -c /etc/podclientd.conf
欢迎各位和我一样在家里搭服务器,IP天天变的同志们使用并反馈.
附记:如果无法运行,请将错误输出发给我。谢谢。我的 gtalk:xurenlu#gmail.com [请将#换成@]
本文由蝌蚪安尼友情赞助.
不错,等空间到期了,试试这个。
你好! 牛人…..
有时间分享下你学PHP的经历!!
指点指点新手如何学PHP!!
期待你的好文!…
车祸,花钱没帐了.然后发现小钱包网站我访问不了了.
我很想用,跑不起来哦,
我下载了deb包后,dpkg -i phppod-*.deb,接着修改了/etc/podclientd.conf文件,改成我自己的域名,再运行你说的第四步,显示”/usr/bin/env: php: No such file or directory”,我想是因为我的php不是安装在这个目录引起的,能否改成自动检查php目录,或者通过配置文件配置呢? 谢谢。
那你修改这一行吧。或者直接把这一行删除掉。
如果再亲和点,我就改成这样了
补充一下,还需要安装这个库才能用,sudo aptitude install php5-curl,另外 请教一下phppod占用了终端在显示,怎样切换一个新的终端来工作呢?谢谢
这个….
如果是ubuntu下用的gnome-terminal,可以新建标签
如果是win下,再打开一个就行了。
或是Ctrl+Z也可以将当前工作挂起到后台运行的。
我在修改配置文件配置邮件服务器域名时出错,我改了record type = 3 ,但是显示128行出错,foreach()参数非法,各条记录不能分开设置各自的参数吗?
提示 出错 信息 代码为“9” ,是不是mx的记录值应该是”mail.xxxx.com.” ,设置文件不支持这样子写,看api里面是要有一个“.”的。谢谢
啊,我写的时候完全没有考虑mx的记录。sorry。
另外,用ADSL搞mx还是很危险的啊,比如一封发到webmaster@yoursite.com的信却发到了webmaster@***.com,又刚巧是比较重要的信息….
我的邮件服务器只负责向外面发邮件,不负责收邮件的,不怕的,呵呵,对了,你的版本升级到1.0.2,没有看到changelog;-) ,
出现错误提示:Fatal error: Call to undefined function pcntl_signal() in /usr/bin/podclient on line 69
应该怎么配置?
@xiaoxie:
如果是1.0.2版:
你把podclient.php中69到72行
pcntl_signal相关的代码注释掉。
还是搞不定:pid file [/tmp/pid.podclient] not found.
Fatal error: Call to undefined function posix_getpid() in /usr/bin/podclient on line 122
是不是,php4和php5有很多函数都不通用,我用的是php5
那你把这一段都删除掉:
/**
* 如果老的进程存在,先杀掉.
* */
if(file_exists($options["pid"])){
$old_pid=intval(trim(file_get_contents($options["pid"])));
if($old_pid>0){
if(!posix_kill($old_pid,SIGTERM)){
my_error_log(“kill pid error:”.$old_pid);
}
}
else
{
my_error_log(“old_pid reading error”,”INFO”);
}
}
else{
my_error_log(“pid file [".$options["pid"].”] not found.”,”INFO”);
}
$pid=posix_getpid();
if(!file_put_contents($options["pid"],$pid)){
my_error_log(“pid file [".$options["pid"].”] write failed.”,”INFO”);
}
终于能用了,但是还是有问题。好像进程并非一直在运行,只好把它挂到ppp.linkup里面了。
Warning: posix_kill() expects parameter 2 to be long, string given in /usr/bin/podclient on line 112
kill pid error:44226
update information successful
update information successful
不需要一直运行。我后来的做法是,加个crontab。
您好,
我用的phppod_1.0.3-20090818_i386.deb,大概从昨天不能使用,报错如下:
php /usr/bin/podclient -c /etc/podclientd.conf
kill pid error:469
Warning: Invalid argument supplied for foreach() in /usr/share/podclient/phppod.php on line 125
try to create domain record,wait a moment pelase…
请问能解决吗?
到http://github.com/xurenlu/phppod/downloads 去下载1.05的
然后运行
/usr/share/podclient/initconf.php
初始化一份配置文件,存到
/etc/podclientd.conf
中,手动修改必须的参数,再启动之.
又出问题了:
domain:xxxxx.com,subdomain:www modify failed
Array
(
[code] => 7
[message] => Params missing or error.
)
got some unkown error
我正在查,但dnspod的网站打不开
我重新下载的1.05版。
先执行:
php /usr/share/podclient/initconf.php -u myemail -p mypassword
得到:
username = myemail
password = mypassword
[*.learndiary.com]
ttl = 60
record_line= default
record_type= A
mx= 0
value= 192.168.1.1
将上面的内容复制为: /etc/podclientd.conf
手动执行: php /usr/bin/podclient -c /etc/podclientd.conf
结果:
kill pid error:1396
Array update success.
但是IP为上面的测试IP 192.168.1.1
修改配置文件为原来的内容:/etc/podclientd.conf
username = myemail
password = mypassword
[*.learndiary.com]
record_type = A
record_line = default
mx = 10
ttl = 1
手动执行: php /usr/bin/podclient -c /etc/podclientd.conf
报错:
kill pid error:1342
can’t modifyRecord:learndiary.com,prefix:*,ip/value:
Array
(
[status] => Array
(
[code] => 7
[message] => Params missing or error.
[created_at] => 2010-03-30 10:58:44
)
)
还是不能用。
那外检查一下dnspod的接口是不是改了
正要检查,但是dnspod的网站打不开,实在没办法~
最近几天dnspod在调整web服务器,可能稍微有点不正常。另外最近API可能会有点小调整,请随时关注。
任何问题欢迎发邮件到tech a dnspod.com
呵呵,升级到 1.0.6 版好像已经正常了。
谢谢。
Pingback 引用通告: ADSL+旧主机=独立服务器 | 一叶知秋