TYPO3"核心:错误处理程序(FE):PHP警告:is_dir():无法找到包装器..."

时间:2014-08-26 09:01:16

标签: php typo3 typo3-6.2.x

我正在学习使用TYPO3。我已经安装了TYPO3 v6.2.4和#34;官方介绍包"在Ubuntu Server 14.04.1 LTS上。一切正常,但有一天早上我注意到我的TYPO3网站加载时间很长。之后它看起来很奇怪(似乎缺少css)。首先,我登录到TYPO3 CMS后端,并在日志中看到以下内容:

Core: Error handler (FE): PHP Warning: is_dir(): Unable to find the wrapper "ttp" - did you forget to enable it when you configured PHP? in /opt/typo3/typo3_src-6.2.4/typo3/sysext/core/Classes/Utility/GeneralUtility.php line 884

GeneralUtility.php line 884

谷歌搜索了一段时间后,我没有找到确切答案这个错误是什么。我试着自己找到原因。幸运的是,通过按"清除缓存来清除缓存"我的网站开始正常工作。但第二天早上情况又重演了。

找到错误的原因会很好,但我不知道从哪里开始。目前我正在阅读" Efficiently Debugging TYPO3"。也许有人遇到这种情况或者可以提供如何解决它的好建议。感谢。

P.S。对不起,英语不是我的母语,可能是我在文中犯了很多错误)

2 个答案:

答案 0 :(得分:1)

虽然这不是直接答案,但我们会遇到相同的警告。虽然我也不知道这是来自何处。

→在给定的日志时间,访问日志中有条目,但没有" ttp"方案。但是,推荐人http://httpheader.net很奇怪。我在日志行中匿名化了IP。今天,有两个访问间隔10秒。请注意,这导致307重定向,但客户端没有遵循,因为没有后续条目。对我而言,似乎是造成这种情况的机器人。

93.174.0.0 - - [15/Sep/2014:06:58:57 +0200] "GET http://www.fsmb.de/ HTTP/1.1" 307 267 "http://httpheader.net" "Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28 (.NET CLR 3.5.30729)" 93.174.0.0 - - [15/Sep/2014:06:58:47 +0200] "GET http://www.fsmb.de/ HTTP/1.1" 307 267 "http://httpheader.net" "Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28 (.NET CLR 3.5.30729)"

→在我们的整个项目结构中,包括typo3 sys文件夹,供应商文件夹,自己的扩展名,静态Typoscript,[^h]ttp的正则表达式搜索仍然毫不费力。

→在整个数据库中,[^h]ttp的正则表达式搜索仍然毫不费力。

我的结论到目前为止,可能ttp方案不是由http://forum.typo3.org/index.php/t/205719/中讨论的拼写错误引起的,但可能是某些子字符串索引或正则表达式与正常URL相关的问题。我们应该检查GeneralUtility::split_fileref的所有用法的上下文。

希望这有帮助!

答案 1 :(得分:0)

我正在使用typo3 4.7,并在我的日志中显示

Core: Error handler (FE): PHP Warning: is_dir(): Unable to find the wrapper "ttp" -
     did you forget to enable it when you configured PHP? 
    in typo3_src-4.7.10/t3lib/class.t3lib_div.php line 1005

我在文件class.t3lib_div.php中查找过了,创建此错误的函数称为split_fileref()

     /**
      * Splits a reference to a file in 5 parts
      *
      * @param string $fileref Filename/filepath to be analysed
      * @return array Contains keys [path], [file], [filebody], [fileext     ], [realFileext]
      */
     public static function split_fileref($fileref) {
     //[...]
     if (!is_dir($fileref) && preg_match('/(.*)\.([^\.]*$)/', $info['file'], $reg))         $info['filebody'] = $reg[1];
     }
         //[...]

所以我怀疑你的某个typo3内容元素中有人输入了一个路径应该是的URL。

但是如何在后端找到这个配置错误的页面?我不知道。我也可以是几页。

这并不一定意味着这是导致性能问题的明确原因。