Magento Как отлаживать пустой белый экран



Answers

Всякий раз, когда это происходит, первое, что я проверяю, это ограничение памяти PHP.

Magento переопределяет нормальный обработчик ошибок с его собственным, но когда ошибка «Out of memory», которую пользовательский обработчик не может запустить, так что ничего не видно.

Question

У меня есть ошибка в моем бэкэнде Magento, который приводит к пустому экрану (WSOD). Я установил ошибки в admin, но ничего не создано в var / logs /. (Я проверил разрешения для этого каталога, и все верно).

У меня также ini_set ('display_errors', 1) в index.php и Magento установлен в режим разработчика. Я также включил журналы ошибок apache и php.

Ошибки не регистрируются, хотя ?!

Кто-нибудь знает, почему ошибки не отображаются? Как я смущен! благодаря




ЕЩЕ ОДНА ПРИЧИНА

для белого экрана без сообщений об ошибках может быть фрагментация кэша APC .

Используйте phpinfo() чтобы узнать, используется ли она вашей страницей (у нас были проблемы с PHP 5.4 + APC 3.1.13), и если да, посмотрите, что произойдет, когда вы либо

  • отключить его через .htaccess: php_flag apc.cache_by_default off
  • очищайте кеш apc каждый раз, когда вызывается страница: добавьте вверху index.php apc_clear_cache(); (нет решения, но полезно проверить, является ли проблема APC)

Если у вас есть APC, и это проблема, вы можете

  • играть со своими настройками, которые могут быть громоздкими и по-прежнему не работают вообще
  • просто обновите до PHP 5.5 и вместо этого используйте встроенный кеш-код.



Я также столкнулся с этой ошибкой. Ошибка была исправлена ​​путем изменения содержимого основной функции getRowUrl в приложении \ code \ core \ Mage \ Adminhtml \ Block \ Widget \ Grid.php. Основная функция:

public function getRowUrl($item) 
{ 
$res = parent::getRowUrl($item); 
return ($res ? $res : ‘#’); 
}

Заменено:

public function getRowUrl($item) 
{ 
return $this->getUrl(’*/*/edit’, array(’id’ => $item->getId())); 
}

Подробнее: http://bit.ly/iTKcer

Наслаждаться!!!!!!!!!!!!!




Это также может быть вызвано использованием закладок xDebug при отладке страницы. Просто прекратите отладчик (удалите cookie), и он вернется к нормальному состоянию.




Я также столкнулся с такой же проблемой при загрузке проекта magento на свой веб-сервер. В моем случае zip-файл поврежден во время процесса загрузки, и многие из моих php-файлов также повреждены . Я загрузил через ftp. Я нашел решение для этого. Если вы делаете zip-файл с Linux-машины, попробуйте использовать инструмент командной строки (например: ie;

zip -r my_archive.zip /path/of/files/to/compress/ )

и загрузите на свой веб-сервер из клиента windows filezilla.




В моем случае размер файла index.php равнялся нулю. Я скопировал исходный файл, и он сработал.

Однако не знаю, что стерло содержимое index.php.




Иногда это происходит, потому что символические ссылки не допускаются в настройках шаблона: Advanced > Developer > Template Settings > Allow Symlinks




Это может быть так же просто, как конфликт шаблонов. Верните шаблон по умолчанию в System/Configuration/Design/Themes.




Ниже приводятся причины, по которым пустые страницы пурпурно

1) Проблемы с правами на файл или каталог. Если вы переходите с одного сервера на другой, помните, чтобы предоставить 755 разрешения каталогам и файлам

2) Если вы работали над xml-файлом, и вдруг страницы опущены. Проверьте, что вы, возможно, не прокомментировали строки кода правильно. Незакрытый комментарий также создаст проблему.

3) Возможно, проблема из-за недостаточного выделения памяти для memory_limit .

4) Попробуйте очистить содержимое папки var / cache

5) Попробуйте очистить содержимое папки var / session

6) Если в ваших расширениях используется ионный загрузчик на производстве, тогда также установите ионный куб на сервер разработки. (Как и для расширений расширений). Несмотря на то, что у вас может быть загрузчик ионного куба, попробуйте установить последнюю версию. Поскольку некоторое время, когда вы обновляете расширения, которые зависят от ионный куб несовместим со старыми версиями.

7) Установите short_open_tag = On в php.ini. Иногда разработчики используют <? ?> <? ?> и если short_open_tag не установлен, вы можете столкнуться с такими проблемами, как страница с половиной искажений и т. д.






Related