我想启用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
答案 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”)。这启动了编译过程,而不是“激活”它。这对我有用。