用CodeIgniter做的一个网站,strace apache后发现n多的错误
access("/Data/www/application/libraries/MY_Input.php", F_OK) = -1 ENOENT (No such file or directory)access("/Data/www/application/libraries/MY_Language.php", F_OK) = -1 ENOENT (No such file or directory)
access("/Data/www/application/libraries/MY_Controller.php", F_OK) = -1 ENOENT (No such file or directory)
access("/Data/www/application/libraries/MY_SuperModel.php", F_OK) = -1 ENOENT (No such file or directory)
上面只是列出一小部分而已,是通过strace apache发现的,而apache的log里面是没有的,网站访问也挺正常。但一直以来apache都不断的产生僵尸进程,现在怀疑跟这个有关。
注意:实际上根本没有扩展类,服务器任何路径下都没有这几个MY_开头的文件,而且访问非常频繁,为什么啊? ci load系列会用file_exists()探测子类是否存在,用strace跟踪php试图探知不存在的文件,就会有这个提示,不算错误 版主说的很对,要检测这些类是否子类化过,否则你子类化某个类库也不会有效果了。 多谢版主
还有一个问题
access("/Data/www/application/libraries/cmsclient.php", F_OK) = 0
time(NULL) = 1260540971
time(NULL) = 1260540971
open("/Data/www/application/libraries/cmsclient.php", O_RDONLY) = 15
fstat64(15, {st_mode=S_IFREG|0664, st_size=2873, ...}) = 0
read(15, "<?php\r\n/*\r\n * Created on 2006-12"..., 8192) = 2873
read(15, "", 8192) = 0
read(15, "", 8192) = 0
close(15) = 0
access("/Data/www/application/config/cmsclient.php", F_OK) = -1 ENOENT (No such file or directory)
明明 /Data/www/application/libraries/cmsclient.php 访问并打开了
接着又去/Data/www/application/config/cmsclient.php 访问不存在
这是不是我们自己程序的问题?找半天没找到 lz应该看下loader的源码呀,load->library($x)会尝试用file_exists检测其对应的配置文件application/config/$x.php,不存在配置文件当然会提示1楼的信息 谢谢,我先去看看 呵呵,没用过楼主的那个工具。
这只能说明这个工具不够聪明,就和很多 IDE 都不能对 CI 自动完成一样。
页:
[1]