当我尝试访问我的 magento 网站或管理面板时,我收到此错误:
Fatal error: require_once() [function.require]: Failed opening required '__DIR__/composer/autoload_real.php' (include_path='/homepages/1/d372694303/htdocs/Magento 1.8/app/code/local:/homepages/1/d372694303/htdocs/Magento 1.8/app/code/community:/homepages/1/d372694303/htdocs/Magento 1.8/app/code/core:/homepages/1/d372694303/htdocs/Magento 1.8/lib:.:/usr/lib/php5') in /homepages/1/d372694303/htdocs/Magento 1.8/app/code/local/Elite/vendor/autoload.php on line 5
我所做的只是从管理面板禁用所有缓存,现在我无法访问该网站。有没有办法重新启用缓存?我尝试使用 sql 命令通过 phpmyadmin 重新启用缓存
UPDATE `core_cache_option` SET value=1;
这并没有解决我的问题。
最佳答案
这看起来像是您的系统特有的错误。要么是自定义开发,要么是通过第三方扩展完成奇怪的事情,或者两者兼而有之。
PHP 为您提供调试错误所需的所有信息。
如果你解析错误消息,首先会发现错误
Fatal error: require_once() [function.require]: Failed opening required 'DIR/composer/autoload_real.php'
正如其他人所指出的,魔术常量 __DIR__ 确实包含在字符串中。
其次,在括号中,PHP 让您知道请求期间的包含路径
(include_path='
/homepages/1/d372694303/htdocs/Magento 1.8/app/code/local:
/homepages/1/d372694303/htdocs/Magento 1.8/app/code/community:
/homepages/1/d372694303/htdocs/Magento 1.8/app/code/core:
/homepages/1/d372694303/htdocs/Magento 1.8/lib:.:
/usr/lib/php5')
这些看起来非常标准(虽然我个人不会在“Magento 1.8”路径名中包含空格,但我已经老了)
第三,也是最后,PHP 会告诉您错误发生的位置。
in /homepages/1/d372694303/htdocs/Magento 1.8/app/code/local/Elite/vendor/autoload.php on line 5
因此 app/code/local/Elite/vendor/autoload.php
的第 5 行是发生错误的位置。
至于为什么发生这种情况,看起来有人正在尝试使用composer在Elite文件夹中安装某些东西。这可能是 Elite 中提供的扩展/主题的发布方式,也可能是其他开发人员对系统所做的事情。
当您在 Magento 中禁用缓存时,Magento 通常从缓存中提取的内容需要重新生成。这意味着运行更多、不同的代码。重新打开缓存并不能解决这个问题,Magento 首先需要缓存一些东西,然后才能从缓存中提取它。我对发生的情况的最佳猜测是,开发人员正在处理 app/code/local/Elite
文件夹中的某些内容,系统缓存时通常不会调用这些内容。
关于php - 当我访问我的 magento 网站时收到 php 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20752949/