smth1.1的,9月20日左右cvs smth主分支,前两天又装了smth的blog.
原来的帐号是带有下划线的,转换的时候没有注意,转换以后带有下划线的id丢失
因为smth的系统对于web下注册的新帐号需要激活,所以修改bbsreg.html和bbsreg.php,在bbsreg.html里面注释掉了关于电话号码和手机的提交,然后在bbsreg.php里面修改不判断直接使用zixia的那种直接提交方式.(原来smth1.1的时候,web下也是修改成不需要等两天,每1个小时pre_register到register列表等待审批)
现在的问题是,从宏观层面上看,表现出来的情况是,不论是web下注册id,还是telnet下注册id,注册了十多个或者再多点就不能注册了,telnet下提示是第"-1"个id,无法注册. web下提示"case 10:html_error_quit("系统错误,请与系统管理员SYSOP联系.");" 并且,仔细观察发现,帐号的位置从最大一直往最小走(比如第一个帐号位置是15000,然后第二个是12100,一直减少,减少到几百或者几十的位置,再注册就提示上面的错误了,帐号位置到了最小,没地方放了以后,不会重新回到最大的已有帐号位置,然后再+1放.
不能注册以后,如果马上重启,还是不能注册,或者只能注册一两个;如果等一段时间重启,
根据等待时间长短,能够重新注册多少不一的id个数,然后又不能注册.如果一直不重启,那么隔一段时间,能够间歇注册一个两个id,并且帐号的位置都是在中间的(就是不是在已有帐号个数后面继续增加的).
另外,我们站的技术站长追过telnet下的提示错误,发现是在ucache.c里面的getnewuserid3的函数里面,
m_socket = socket(PF_INET, SOCK_STREAM, IPPROTO_TCP);
if (m_socket < 0) {
return -1;
这个地方return的-1.(现在最新的cvs似乎这个函数都是return的-1了,不过我们站cvs的时候,每个地方return的数值是不一样的,所以确定是这个地方return的)
另外,以前可能错误地多开过miscd,bbslogd(就是bbs相关的程序可能运行过两套,机器自动启动一次,自己手动又启动一次),不过现在肯定是只有一套.
请教各位,关于新帐号无法注册的这个问题,大概应该如何如何解决呢?
因为前面我们站的技术站长似乎问过,但是没有得到什么有效的答复,所以我又整理了一下所有跟这个出错可能有关的东西,完整的post出来,不知道哪位老大能够指教一下.
--
FROM 202.112.114.*