关于CI在IIS下,访问偶尔出现404错误问题
我用CI开发了个网站,放在win03,IIS6下运行,配置了rewrite了。一般可以正常访问,但是也偶尔出现"404"错误。出现404频率也比较多。基本上我点二十个连接。。就会出现几次。而且出现404的时候,刷新都没有用。要重新打开一个页面才显示正常的。还有就是系统事件里一直都有警告警告信息如下:
为应用程序池 '_$_kx0769_new_$_14646967_$_DefaultAppPool_$_tmp' 提供服务的进程在与 World Wide Web Publishing 服务通信时遇到致命错误。进程 ID 为 '7880'。数据字段包含错误号。
。我不知道是不是rewrite的不稳定造成的还是其他什么的原因。 求解 我的rewrite的配置文件规则如下:
Debug 1
Reload 5000
#Browse LOT
RewriteRule ^/kx0769_new/.*\.php(.*) /kx0769_new/index.php?$1
RewriteRule ^/kx0769_new/(.*) /kx0769_new/index.php?/$1 这肯定是服务器问题了。
请换 apache 吧,我早就不用 IIS 了。或者重装一下 IIS。 3# Hex
经过一个下午测试。。发现应该不是服务器问题。我把Rewrite去掉了,其他PHP的站运行正常。
后来经过反复调试。发现CI的页面output的cache有问题
这个:$this->output->cache(10);
如果我在一个controllers里写了一个类。 这个函数的构造函数里写了output->cache,然后,在此类里写一个function test(){echo "ok";}
这样的话。 我打开执行这个function的页面。 第一次可能可以输出OK. 但第二次,第三次。。就会空白。 这是BUG?还是???能解析下吗? 把output->cache屏蔽掉,则正常。 是不是页面缓存的BUG? 哦。。知道什么原因了。。 原来是需要通过view输出才被缓存。。。 呵呵,貌似你这个问题我也遇到过,不通过视图就不会缓存。
页:
[1]