动态域名方案之:phppod

  • 2010.03.31:请最近这几天使用phppod有问题的升级到1.0.6版本;
  • 最新更新:到http://github.com/xurenlu/phppod/downloads 去下载1.05的
    然后运行
    /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  [请将#换成@]


    本文由蝌蚪安尼友情赞助.
    相关文章
    此条目发表在 my projects, php技术 分类目录。将固定链接加入收藏夹。

    动态域名方案之:phppod》有 28 条评论

    1. 知知了了 CHINA Windows XP Internet Explorer 7.0 说:

      不错,等空间到期了,试试这个。

    2. 路人 CHINA Windows XP Internet Explorer 6.0 说:

      你好! 牛人…..
      有时间分享下你学PHP的经历!!
      指点指点新手如何学PHP!!
      期待你的好文!…

    3. thirteen CHINA Windows XP Internet Explorer 6.0 说:

      车祸,花钱没帐了.然后发现小钱包网站我访问不了了.

    4. lolomarx CHINA Windows XP Internet Explorer 6.0 说:

      我很想用,跑不起来哦,
      我下载了deb包后,dpkg -i phppod-*.deb,接着修改了/etc/podclientd.conf文件,改成我自己的域名,再运行你说的第四步,显示”/usr/bin/env: php: No such file or directory”,我想是因为我的php不是安装在这个目录引起的,能否改成自动检查php目录,或者通过配置文件配置呢? 谢谢。

    5. admin Ubuntu Linux Mozilla Firefox 3.0.11 说:

      那你修改这一行吧。或者直接把这一行删除掉。

    6. 80后创业 CHINA Windows Server 2003 Internet Explorer 6.0 说:

      如果再亲和点,我就改成这样了

    7. lolomarx CHINA Windows XP Internet Explorer 6.0 说:

      补充一下,还需要安装这个库才能用,sudo aptitude install php5-curl,另外 请教一下phppod占用了终端在显示,怎样切换一个新的终端来工作呢?谢谢

      • admin CHINA Windows XP Google Chrome 2.0.172.33 说:

        这个….
        如果是ubuntu下用的gnome-terminal,可以新建标签
        如果是win下,再打开一个就行了。
        或是Ctrl+Z也可以将当前工作挂起到后台运行的。

    8. lolomarx CHINA Windows XP Internet Explorer 6.0 说:

      我在修改配置文件配置邮件服务器域名时出错,我改了record type = 3 ,但是显示128行出错,foreach()参数非法,各条记录不能分开设置各自的参数吗?

    9. lolomarx CHINA Windows XP Internet Explorer 6.0 说:

      提示 出错 信息 代码为“9” ,是不是mx的记录值应该是”mail.xxxx.com.” ,设置文件不支持这样子写,看api里面是要有一个“.”的。谢谢

      • admin Ubuntu Linux Mozilla 1.9.1.1pre 说:

        啊,我写的时候完全没有考虑mx的记录。sorry。
        另外,用ADSL搞mx还是很危险的啊,比如一封发到webmaster@yoursite.com的信却发到了webmaster@***.com,又刚巧是比较重要的信息….

    10. lolomarx CHINA Windows XP Internet Explorer 6.0 说:

      我的邮件服务器只负责向外面发邮件,不负责收邮件的,不怕的,呵呵,对了,你的版本升级到1.0.2,没有看到changelog;-) ,

    11. xiaoxie CHINA Windows XP Internet Explorer 6.0 说:

      出现错误提示:Fatal error: Call to undefined function pcntl_signal() in /usr/bin/podclient on line 69
      应该怎么配置?

    12. admin AUSTRALIA PHP 说:

      @xiaoxie:
      如果是1.0.2版:
      你把podclient.php中69到72行
      pcntl_signal相关的代码注释掉。

    13. xiaoxie CHINA Windows XP Internet Explorer 6.0 说:

      还是搞不定: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

    14. admin AUSTRALIA PHP 说:

      那你把这一段都删除掉:
      /**
      * 如果老的进程存在,先杀掉.
      * */
      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”);
      }

    15. xiaoxie CHINA Windows XP Internet Explorer 6.0 说:

      终于能用了,但是还是有问题。好像进程并非一直在运行,只好把它挂到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

    16. littlebat CHINA Ubuntu Linux Mozilla Firefox 3.5.8 说:

      您好,

      我用的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…

      请问能解决吗?

    17. 一米六二 AUSTRALIA Linux Google Chrome 5.0.360.0 说:

      到http://github.com/xurenlu/phppod/downloads 去下载1.05的
      然后运行
      /usr/share/podclient/initconf.php
      初始化一份配置文件,存到
      /etc/podclientd.conf
      中,手动修改必须的参数,再启动之.

    18. ksxb CHINA Windows XP Internet Explorer 6.0 说:

      又出问题了:
      domain:xxxxx.com,subdomain:www modify failed
      Array
      (
      [code] => 7
      [message] => Params missing or error.
      )
      got some unkown error

    19. littlebat CHINA Ubuntu Linux Mozilla Firefox 3.5.8 说:

      我重新下载的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
      )

      )

      还是不能用。

    20. 奶罩 CHINA Mac OS X Google Chrome 5.0.360.0 说:

      最近几天dnspod在调整web服务器,可能稍微有点不正常。另外最近API可能会有点小调整,请随时关注。
      任何问题欢迎发邮件到tech a dnspod.com

    21. littlebat CHINA Ubuntu Linux Mozilla Firefox 3.5.8 说:

      呵呵,升级到 1.0.6 版好像已经正常了。
      谢谢。

    22. Pingback 引用通告: ADSL+旧主机=独立服务器 | 一叶知秋 UNITED STATES WordPress 2.9.2

    发表评论

    电子邮件地址不会被公开。 必填项已被标记为 *

    *

    您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>