修复编译magento错误

时间:2012-11-23 16:30:15

标签: php magento

我想启用magento编译,但是当我启用它时,我会看到以下错误:

  

警告:include_once(... / includes / src / Mage_Core_functions.php)[function.include-once]:无法打开流:第36行的/ app / Mage.php中没有这样的文件或目录   

  警告:include_once()[function.include]:无法打开包含的'... / includes / src / Mage_Core_functions.php'(include_path ='/ ... / includes / src:。:/ usr / share / php' )在第36行的... / app / Mage.php中发送文件

     

警告:include_once(... / includes / src / Varien_Autoload.php)[function.include-once]:无法打开流:/.../app/Mage.php中没有这样的文件或目录37

  警告:include_once()[function.include]:无法打开'... / includes / src / Varien_Autoload.php'(include_path ='... / includes / src:。:/ usr / share / php')在第37行的... / app / Mage.php中

  致命错误:第53行的... / app / Mage.php中找不到“Varien_Autoload”类

有人可以帮我修理吗?我想要启用编译。在互联网上,关于这个问题的每个答案都禁用了编译。我想要启用编译。仅供参考,我的magento版本是1.7.0.0

2 个答案:

答案 0 :(得分:10)

您是否更改了/includes目录的访问权限?因为,在编译之后,编译的源代码驻留在/includes/src目录中!

$ chmod o+w includes includes/config.php

# if its not work, do following
$ chmod -R 777 includes/

修改 要关闭编译模式,请打开文件includes/config.php并注释掉以下行:

define(’COMPILER_INCLUDE_PATH’, dirname(__FILE__).DIRECTORY_SEPARATOR.’src’); 
#define(’COMPILER_COLLECT_PATH’, dirname(__FILE__).DIRECTORY_SEPARATOR.’stat’);

#define(’COMPILER_INCLUDE_PATH’, dirname(__FILE__).DIRECTORY_SEPARATOR.’src’);
#define(’COMPILER_COLLECT_PATH’, dirname(__FILE__).DIRECTORY_SEPARATOR.’stat’);  

如果要启用编辑模式,请转到管理部分按“运行编译”按钮。

摘要: 我猜,你忘了在编译过程之前设置目录权限,因此编译过程还没有创建编译源代码目录!

备注: 编译过程可能很头疼。在每次代码修改时,您应该再次编译或相反,您应该在修改或扩展安装之前禁用编译。一些扩展是麻烦的。这就是为什么这么多人不想在这个选项中使用的原因。此外,在Magento的v2.0中,编译过程已经停止,不再可用了!

答案 1 :(得分:1)

停用像OğuzÇelikdemir推荐的编译器,然后点击“开始编译过程”(或类似的东西。它是德语中的“Kompilierungsvorgang starten”)。这启动了编译过程,而不是“激活”它。这对我有用。