php – CodeIgniter控制器被调用两次
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了php – CodeIgniter控制器被调用两次,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2378字,纯文字阅读大概需要4分钟。
内容图文
完全有可能我在某个地方犯了一个大错,但由于某种原因,我的控制器被调用了两次.这打破了DX_Auth在Chrome上的验证码,但不知何故,Firefox和IE可以处理它.
问题是,每个控制器被调用两次毫秒.我使用log_message()来打印$_SERVER超全局中的每个键/值对.
唯一的区别是:
第一次通话
'HTTP_CACHE_CONTROL' => 'max-age=0'
'HTTP_ACCEPT' => 'application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5'
'HTTP_COOKIE' => 'ci_session=a:4:{s:10:"session_id";s:32:"4be9cef4e2cdae468c7443f52a5fb3f2";s:10:"ip_address";s:13:"321.321.321.321";s:10:"user_agent";s:50:"Mozilla/5.0+(Windows;+U;+Windows+NT+6.1;+en-US)+Ap";s:13:"last_activity";s:10:"1282151409";}70b300096c8d40c60a676ac65bcb222c'
'REMOTE_PORT' => '61828'
和第二次通话
'HTTP_CACHE_CONTROL' => NULL
'HTTP_ACCEPT' => '*/*'
'HTTP_COOKIE' => 'ci_session=a:4:{s:10:"session_id";s:32:"a5bb2c98a8ff4438cef3a3fe3d5ff73e";s:10:"ip_address";s:13:"321.321.321.321";s:10:"user_agent";s:50:"Mozilla/5.0+(Windows;+U;+Windows+NT+6.1;+en-US)+Ap";s:13:"last_activity";s:10:"1282151734";}4adf1de21f9708d66b3d4bc36d0b0d92'
'REMOTE_PORT' => '61842'
在CI论坛上已经有一个线程,其他人也有类似的问题,但他的问题被证明是间谍软件.对我来说情况并非如此.我尝试了几台计算机,我的访客都没有注册该网站.
你看,DX_auth在第一次调用时将验证码的值存储为CI会话flashdata.第二个调用擦除闪存数据,因此没有人能够正确获取验证码.
以下是我的访问日志示例
123.123.123.123 - - [18/Aug/2010:12:31:26 -0500] "GET /welcome HTTP/1.1" 200 3391 "http://somewhere.com/[age" "Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/533.4 (KHTML, like Gecko) Chrome/5.0.375.126 Safari/533.4"
123.123.123.123 - - [18/Aug/2010:12:31:27 -0500] "GET /welcome HTTP/1.1" 200 3391 "-" "Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/533.4 (KHTML, like Gecko) Chrome/5.0.375.126 Safari/533.4"
如你所见,第一个电话似乎来自我,第二个电话没有推荐人.
我以为我用来消除uri中的index.php的.htaccess文件存在问题.因此,我切换到CI文档中所述的“默认”.htaccess重定向.双重负载仍然发生.
RewriteEngine on
RewriteCond $1 !^(index\.php|asset|captcha|robots\.txt|favicon\.ico)
RewriteRule ^(.*)$/index.php/$1 [L]
我还使用了FireFox的“Live HTTP headers”插件.看起来只发送了一个请求,但FireBug的控制台显示两个回复正在回复.
谁知道发生了什么事?这有发生在其他人身上吗?
解决方法:
请参阅我对类似问题的回复,以了解可能导致此问题的原因,以及如何开始确定确切问题:Controller actions being called twice — Php application
内容总结
以上是互联网集市为您收集整理的php – CodeIgniter控制器被调用两次全部内容,希望文章能够帮你解决php – CodeIgniter控制器被调用两次所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。