Magento如何debugging空白的白屏
我在我的Magento后端导致一个空白屏幕(WSOD)的错误。 我在pipe理中设置了错误,但在var / logs /中没有创build任何东西。 (我已经检查了该目录的权限,都是正确的)。
我也ini_set('display_errors',1)在index.php和Magento设置为开发人员模式。 我也启用了Apache和PHP错误日志。
没有错误被logging,但?
任何人都有一个线索,为什么不显示错误? 我很困惑! 谢谢
这是我如何得到纠正(希望可以帮助你们):
-
在你的index.php文件中使用下面的代码
ini_set('error_reporting', E_ERROR); register_shutdown_function("fatal_handler"); function fatal_handler() { $error = error_get_last(); echo("<pre>"); print_r($error); }
-
在我的情况下,它让我错误/ 503.php不可用。
3.问题是我使用的推荐扩展( http://www.magentocommerce.com/magento-connect/magebuzz-free-testimonial.html )
- 我删除了我的应用程序/ etc / modules / testimoanial.xml中的testimonial.xml文件。
- 删除“maintenance.flag”文件。
每当发生这种情况时,我首先检查的是PHP内存限制。
Magento覆盖正常的error handling程序与自己的,但是当错误是“内存不足”,自定义处理程序不能运行,所以什么都看不到。
同样的问题,我刚刚清除caching
rm -rf var/cache/*
Et瞧! 我不明白这是什么…
这可能与模板冲突一样简单。 在“ System/Configuration/Design/Themes.
恢复为默认模板System/Configuration/Design/Themes.
我也有同样的问题,但解除禁用编译器后,再次重新安装扩展。 禁用编译器可以通过system-> configration-> tools-> compilation来完成。这里禁用这个过程…祝你好运
以下是magento空白页面的原因
1)文件或目录权限问题。 如果您正在从一台服务器迁移到另一台服务器,请记住为目录和文件提供755的权限
2)如果你正在处理一个XML文件,并突然页面变成空白。 检查你可能没有正确地评论代码行。一个未公开的评论也会造成这个问题。
3) memory_limit
内存分配不足可能会导致问题。
4)尝试清除var / cache文件夹的内容
5)尝试清除var / session文件夹的内容
6)如果你的扩展在生产中使用了ioncube loader,那么你也可以在开发服务器上安装ion cube(就像扩展件的扩展一样)。尽pipe你可能已经有离子立方加载器,但是试着安装最新的版本。因为有些时候你更新了依赖于离子立方体与旧版本不兼容。
7)在php.ini中设置short_open_tag = On
。有时开发者使用<? ?>
<? ?>
标记,如果short_open_tag
没有设置,您可能会遇到像半扭曲页面等问题。
它也可以是当你没有正确的PHP扩展加载。 如果不是内存限制问题,我会仔细检查是否已加载所有必需的PHP扩展。
我也面临这个错误。 这个错误已经通过改变app \ code \ core \ Mage \ Adminhtml \ Block \ Widget \ Grid.php中的核心函数getRowUrl的内容得到解决。核心函数是:
public function getRowUrl($item) { $res = parent::getRowUrl($item); return ($res ? $res : '#'); }
replace为:
public function getRowUrl($item) { return $this->getUrl('*/*/edit', array('id' => $item->getId())); }
欲了解更多详情: http : //bit.ly/iTKcer
请享用!!!!!!!!!!!!!
我有同样的问题,重新安装我的主题后解决
上传magento项目到我的web服务器时, 我也遇到了同样的问题, 在我的情况下,zip文件在上传过程中被破坏,我的许多php文件也被破坏 。 我已经通过FTP上传。 我find了这个解决scheme。 如果你是从linux机器制作zip文件的话,尝试使用命令行工具(例如:ie;
zip -r my_archive.zip /path/of/files/to/compress/
)
并从Windows FileZilla客户端上传到您的Web服务器。
刚刚遇到这个问题,失去了整整一天解决它。 尝试增加memory_limit
,这对我工作!
这也可能是由于在debugging页面时使用xDebug书签造成的。 只要停止debugging器(删除cookie),它将恢复正常。
正如你所说 – 这个问题有一个独立的答案。
改变主题后,我有同样的问题。 内存之前被设置为1024,所以这不是问题。 caching被清除,在错误日志中没有任何用处。
在我的情况下,解决scheme是不同的 – 旧的主题有自定义主页模板 …切换到标准的一个固定它。
另一个原因
对于没有错误信息的白色屏幕可能是APCcaching的碎片。
使用phpinfo()找出它是否被你的页面使用(我们有问题与PHP 5.4 + APC 3.1.13),如果是这样,看看你会发生什么
- 禁用它通过.htaccess:
php_flag apc.cache_by_default off
- 每次调用页面时清除apccaching:在index.php的顶部添加
apc_clear_cache();
(没有解决scheme,但很好看,如果APC是问题)
如果你有APC,这是问题,那么你可以
- 玩弄它的设置,这可能是麻烦的,仍然不工作
- 只是更新到PHP 5.5,而不是使用其集成的操作码caching。
我尝试了所有build议的解决scheme,但没有运气。
最后,我发现我需要使用需要升级到的新版Magento版本的pipe理布局和模板和皮肤。 例如我的情况是1.9.2.4
- 使用adminhtml布局和模板,使pipe理主题可以加载
– 基本上,获取所有文件(从app / design / adminhtml /新版本的默认),复制并粘贴到当前网站的文件夹app / design / adminhtml /默认,以取代所有的旧文件
- 使用adminhtml皮肤,使pipe理主题可以正确显示
– 基本上,得到所有的文件(从皮肤/ adminhtml /新版本的默认),复制并粘贴到当前网站的文件夹皮肤/ adminhtml /默认,以取代所有的旧文件
当然,记得在做之前做备份。
最好的做法是使用版本控制作为GIT或SVN。
在我的情况下,index.php文件的大小为零。 我复制了原始文件,它工作。
但是,不知道什么擦除了index.php的内容。
我的解决scheme:通过系统 – >configuration>高级>高级来激活插件
有时会发生这种情况,因为模板设置中不允许使用符号链接: Advanced > Developer > Template Settings > Allow Symlinks