Magento如何调试空白白色屏幕
我的Magento后端有一个错误,导致出现空白屏幕(WSOD)。我在admin中将errors设置为on,但在var/logs/中没有创建任何内容。(我已经检查了该目录的权限,所有内容都是正确的) 我还在index.php中设置了ini_集('display_errors',1),Magento设置为开发人员模式。 我还启用了apache和php错误日志 但是没有记录任何错误 有人知道为什么没有显示错误吗?因为我很困惑!Magento如何调试空白白色屏幕,magento,screen,wsod,Magento,Screen,Wsod,我的Magento后端有一个错误,导致出现空白屏幕(WSOD)。我在admin中将errors设置为on,但在var/logs/中没有创建任何内容。(我已经检查了该目录的权限,所有内容都是正确的) 我还在index.php中设置了ini_集('display_errors',1),Magento设置为开发人员模式。 我还启用了apache和php错误日志 但是没有记录任何错误 有人知道为什么没有显示错误吗?因为我很困惑! 谢谢每当发生这种情况时,我首先检查的是PHP内存限制 Magento用它自
谢谢每当发生这种情况时,我首先检查的是PHP内存限制
Magento用它自己的错误处理程序覆盖正常的错误处理程序,但当错误“内存不足”时,自定义处理程序无法运行,因此看不到任何内容。当您没有加载正确的php扩展时,也可能出现这种情况。如果不是内存限制问题,我会再次检查您的系统是否加载了所有必需的php扩展。我也遇到了这个错误。 通过更改app\code\core\Mage\Adminhtml\Block\Widget\Grid.php中核心函数getRowUrl的内容,已修复该错误 其核心功能是:
public function getRowUrl($item)
{
$res = parent::getRowUrl($item);
return ($res ? $res : ‘#’);
}
替换为:
public function getRowUrl($item)
{
return $this->getUrl(’*/*/edit’, array(’id’ => $item->getId()));
}
有关更多详细信息:
享受 这可能像模板冲突一样简单。恢复到
系统/配置/设计/主题中的默认模板。
刚刚遇到这个问题,花了一整天的时间解决它。尝试增加内存\u限制,这对我很有效 我在将magento项目上载到我的Web服务器时也遇到了同样的问题,在我的情况下,zip文件在上载过程中被损坏,我的许多php文件也被损坏。我已经通过ftp上传了。
我已经找到了解决办法。
如果您是从linux机器生成zip文件,请尝试使用命令行工具(例如:ie
zip-r my_archive.zip/path/of/files/to/compress/
)
并从windows filezilla客户端上传到您的web服务器。我遇到了同样的问题,在重新安装我的主题后解决了同样的问题,
我刚刚清除了缓存
rm -rf var/cache/*
瞧!
我不明白它是什么…这也可能是调试页面时使用xDebug书签造成的。只要停止调试器(删除cookie),调试器就会恢复正常。我也遇到了同样的问题,但在禁用编译器并重新安装扩展后问题得到了解决。可以通过系统->配置->工具->编译来禁用编译器。。在这里禁用进程。。。祝你好运正如你所说,这个问题有一个独立的答案
改变主题后我也有同样的问题。内存以前设置为1024,所以这不是问题所在。缓存已清除,错误日志中没有任何有用的内容
在我的例子中,解决方案是不同的-旧主题有自定义主页模板。。。把它转换成标准的一个固定它。 以下是MaGeto 中空白页的原因。
1) 文件或目录权限问题。
如果要从一台服务器迁移到另一台服务器,请记住对目录和文件授予755权限
2) 如果您正在处理一个xml文件,页面突然变为空白。检查您可能没有正确注释代码行。未关闭的注释也会造成问题
3) 由于内存限制的内存分配不足,可能会出现问题
4) 尝试清除var/cache文件夹内容
5) 尝试清除var/session文件夹内容
6) 如果您的扩展在生产环境中使用ioncube加载程序,那么也可以在开发服务器上安装ion cube。(与extendware扩展一样)。尽管您可能有ion cube加载程序,但请尝试安装最新版本。因为在更新依赖ion cube的扩展时,有时会与旧版本不兼容
7) 在php.ini中设置short\u open\u tag=On
。有时开发人员使用
标记,如果short\u open\u tag
未设置为On,您可能会面临页面半扭曲等问题
8) 增加php的max_input_vars和post_max_size值。当您试图在税收规则中保存大量税率并得到一个空白页时,它会有所帮助。这就是我纠正它的方法(希望能帮助你们):
在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);
}
ini\u集('error\u reporting',E\u error);
寄存器关闭函数(“致命处理器”);
函数fatal_handler(){
$error=error_get_last();
回声(“”);
打印错误($error);
}
在我的例子中,它告诉我error/503.php不可用
3.问题在于我使用的证明扩展()
我删除了我的app/etc/modules/testimonial.xml中的testimonial.xml文件
删除“maintenance.flag”文件
另一个原因
对于没有错误消息的白色屏幕,可能会出现碎片
用于确定您的页面是否使用了它(我们在PHP5.4+APC3.1.13中遇到了问题),如果是,请查看当您
- 通过.htaccess禁用它:
php\u标志apc.cache\u默认关闭
- 每次调用页面时清除apc缓存:在index.php的顶部添加
apc_clear_cache();
(没有解决方案,但最好看看apc是否是问题所在)
如果您有APC,并且它是问题所在,那么您可以
- 玩转它的设置,这可能很麻烦,但仍然无法工作
- 只需更新到PHP5.5并使用其集成的操作码缓存即可
我尝试了所有建议的解决方案,但没有成功
最后,我发现我需要使用新的Magento版本的管理布局、模板和皮肤,您需要升级到该版本。例如,在我的例子中,它是1.9.2.4
- 使用adminhtml布局和模板使管理员主题可以加载
--