White screen on installation

Hi,

SuiteCRM version 7.0.1
PHP Version 5.4.21

I’m getting to the end of the installation process and then seeing a white screen with the following errors:


Strict Standards: Declaration of SugarEmailAddress::save() should be compatible with SugarBean::save($check_notify = false) in /home/_xxx_/public_html/SuiteCRM/include/SugarEmailAddress/SugarEmailAddress.php on line 1110

Strict Standards: Declaration of Person::create_export_query() should be compatible with SugarBean::create_export_query($order_by, $where) in /home/_xxx_/public_html/SuiteCRM/include/SugarObjects/templates/person/Person.php on line 41

Strict Standards: Declaration of User::retrieve() should be compatible with Person::retrieve($id = -1, $encode = true, $deleted = true) in /home/_xxx_/public_html/SuiteCRM/modules/Users/User.php on line 41

Strict Standards: Declaration of User::create_export_query() should be compatible with Person::create_export_query(&$order_by, &$where, $relate_link_join = '') in /home/_xxx_/public_html/SuiteCRM/modules/Users/User.php on line 41

Strict Standards: Declaration of User::create_new_list_query() should be compatible with SugarBean::create_new_list_query($order_by, $where, $filter = Array, $params = Array, $show_deleted = 0, $join_type = '', $return_array = false, $parentbean = NULL, $singleSelect = false, $ifListForExport = false) in /home/_xxx_/public_html/SuiteCRM/modules/Users/User.php on line 41

Strict Standards: Declaration of User::list_view_parse_additional_sections() should be compatible with SugarBean::list_view_parse_additional_sections(&$list_form) in /home/_xxx_/public_html/SuiteCRM/modules/Users/User.php on line 41

Strict Standards: Declaration of Currency::retrieve() should be compatible with SugarBean::retrieve($id = -1, $encode = true, $deleted = true) in /home/_xxx_/public_html/SuiteCRM/modules/Currencies/Currency.php on line 236

Strict Standards: Non-static method UploadStream::register() should not be called statically in /home/_xxx_/public_html/SuiteCRM/include/entryPoint.php on line 181

Strict Standards: Non-static method SugarConfig::getInstance() should not be called statically, assuming $this from incompatible context in /home/_xxx_/public_html/SuiteCRM/include/SugarLogger/LoggerManager.php on line 73

Strict Standards: Non-static method SugarConfig::getInstance() should not be called statically, assuming $this from incompatible context in /home/_xxx_/public_html/SuiteCRM/include/SugarLogger/SugarLogger.php on line 118

Warning: Cannot modify header information - headers already sent by (output started at /home/_xxx_/public_html/SuiteCRM/include/SugarEmailAddress/SugarEmailAddress.php:1110) in /home/_xxx_/public_html/SuiteCRM/install/complete_install.php on line 4

Strict Standards: Non-static method LogicHook::initialize() should not be called statically in /home/_xxx_/public_html/SuiteCRM/include/utils.php on line 3014

Strict Standards: Non-static method Tracker::logPage() should not be called statically in /home/_xxx_/public_html/SuiteCRM/include/utils.php on line 3025

Strict Standards: Declaration of MysqlManager::checkQuery() should be compatible with DBManager::checkQuery($sql, $object_name = false) in /home/_xxx_/public_html/SuiteCRM/include/database/MysqlManager.php on line 1497

I unzipped version 7.0.1 in my webspace, and as my host is running suPHP, prior to installation I set all folders to 755 and all files to 644

If I try to reload the SuiteCRM index.php file in the browser, I get the following errors (more Strict Standards and also one additional Warning):

There are no entries in the server error log or the sugarcrm.log file.


Strict Standards: Declaration of SugarEmailAddress::save() should be compatible with SugarBean::save($check_notify = false) in /home/_xxx_/public_html/SuiteCRM/include/SugarEmailAddress/SugarEmailAddress.php on line 1110

Strict Standards: Declaration of Person::create_export_query() should be compatible with SugarBean::create_export_query($order_by, $where) in /home/_xxx_/public_html/SuiteCRM/include/SugarObjects/templates/person/Person.php on line 41

Strict Standards: Declaration of User::retrieve() should be compatible with Person::retrieve($id = -1, $encode = true, $deleted = true) in /home/_xxx_/public_html/SuiteCRM/modules/Users/User.php on line 41

Strict Standards: Declaration of User::create_export_query() should be compatible with Person::create_export_query(&$order_by, &$where, $relate_link_join = '') in /home/_xxx_/public_html/SuiteCRM/modules/Users/User.php on line 41

Strict Standards: Declaration of User::create_new_list_query() should be compatible with SugarBean::create_new_list_query($order_by, $where, $filter = Array, $params = Array, $show_deleted = 0, $join_type = '', $return_array = false, $parentbean = NULL, $singleSelect = false, $ifListForExport = false) in /home/_xxx_/public_html/SuiteCRM/modules/Users/User.php on line 41

Strict Standards: Declaration of User::list_view_parse_additional_sections() should be compatible with SugarBean::list_view_parse_additional_sections(&$list_form) in /home/_xxx_/public_html/SuiteCRM/modules/Users/User.php on line 41

Strict Standards: Declaration of Currency::retrieve() should be compatible with SugarBean::retrieve($id = -1, $encode = true, $deleted = true) in /home/_xxx_/public_html/SuiteCRM/modules/Currencies/Currency.php on line 236

Strict Standards: Non-static method UploadStream::register() should not be called statically in /home/_xxx_/public_html/SuiteCRM/include/entryPoint.php on line 181

Strict Standards: Non-static method SugarConfig::getInstance() should not be called statically, assuming $this from incompatible context in /home/_xxx_/public_html/SuiteCRM/include/SugarLogger/LoggerManager.php on line 73

Strict Standards: Non-static method SugarConfig::getInstance() should not be called statically, assuming $this from incompatible context in /home/_xxx_/public_html/SuiteCRM/include/SugarLogger/SugarLogger.php on line 118

Strict Standards: Declaration of MysqlManager::checkQuery() should be compatible with DBManager::checkQuery($sql, $object_name = false) in /home/_xxx_/public_html/SuiteCRM/include/database/MysqlManager.php on line 1497

Strict Standards: Declaration of TemplateTextArea::get_db_default() should be compatible with TemplateField::get_db_default($modify = false) in /home/_xxx_/public_html/SuiteCRM/modules/DynamicFields/templates/Fields/TemplateTextArea.php on line 93

Strict Standards: Declaration of TemplateMultiEnum::get_db_default() should be compatible with TemplateField::get_db_default($modify = false) in /home/_xxx_/public_html/SuiteCRM/modules/DynamicFields/templates/Fields/TemplateMultiEnum.php on line 163

Strict Standards: Declaration of TemplateRadioEnum::get_db_default() should be compatible with TemplateField::get_db_default($modify = false) in /home/_xxx_/public_html/SuiteCRM/modules/DynamicFields/templates/Fields/TemplateRadioEnum.php on line 133

Strict Standards: Declaration of ParserLabel::handleSave() should be compatible with ModuleBuilderParser::handleSave($file, $view, $moduleName, $defs) in /home/_xxx_/public_html/SuiteCRM/modules/ModuleBuilder/parsers/parser.label.php on line 43

Strict Standards: Declaration of UndeployedRelationships::findRelatableModules() should be compatible with AbstractRelationships::findRelatableModules($includeActivitiesSubmodules = true) in /home/_xxx_/public_html/SuiteCRM/modules/ModuleBuilder/parsers/relationships/UndeployedRelationships.php on line 44

Strict Standards: Declaration of UndeployedRelationships::build() should be compatible with AbstractRelationships::build($basepath, $installDefPrefix, $relationships) in /home/_xxx_/public_html/SuiteCRM/modules/ModuleBuilder/parsers/relationships/UndeployedRelationships.php on line 44

Strict Standards: Non-static method LogicHook::initialize() should not be called statically in /home/_xxx_/public_html/SuiteCRM/include/entryPoint.php on line 236

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /home/_xxx_/public_html/SuiteCRM/include/SugarEmailAddress/SugarEmailAddress.php:1110) in /home/_xxx_/public_html/SuiteCRM/include/MVC/SugarApplication.php on line 594

Strict Standards: Non-static method LogicHook::initialize() should not be called statically, assuming $this from incompatible context in /home/_xxx_/public_html/SuiteCRM/include/MVC/SugarApplication.php on line 611

Warning: Cannot modify header information - headers already sent by (output started at /home/_xxx_/public_html/SuiteCRM/include/SugarEmailAddress/SugarEmailAddress.php:1110) in /home/_xxx_/public_html/SuiteCRM/include/utils.php on line 2695

Strict Standards: Non-static method ControllerFactory::getController() should not be called statically, assuming $this from incompatible context in /home/_xxx_/public_html/SuiteCRM/include/MVC/SugarApplication.php on line 71

Strict Standards: Non-static method LogicHook::initialize() should not be called statically in /home/_xxx_/public_html/SuiteCRM/include/utils.php on line 3014

Strict Standards: Non-static method Tracker::logPage() should not be called statically in /home/_xxx_/public_html/SuiteCRM/include/utils.php on line 3025

Strict Standards: Non-static method SugarConfig::getInstance() should not be called statically in /home/_xxx_/public_html/SuiteCRM/include/utils/sugar_file_utils.php on line 362

Hi Pete,

Please see the following link which details how to deal with strict standards. Does this help?

Thanks,

Will.

Thanks for the quick reply Will. I know I can turn off the error messages, but the real problem is that I getting the WSOD white screen of death at the end of the install process. I included the PHP error messages in case they could be of some help identifying the problem

Cheers
Pete

There’s also a Console error visible in Firebug, as follows:

ReferenceError: SUGAR is not defined

...<script>SUGAR.ajaxUI.loadContent('index.php?action=Login&module=Users');</script

@Pete: Change the file permissions to 755. Also, set the permissions as 775 for these specific files/folders: cache, custom, modules, themes, data, upload, config_override.php

AK

hi AK,

Unfortunately that doesn’t help. I’m still getting the blank screen after setting permissions as you suggest.

Cheers
Pete

Ah, that’s weird. Can you confirm that you have already followed Will’s advise to disable “display_errors” in your php.ini? The strict standards config is causing PHP to throw error messages before parsing the headers and that seems to be causing further issues.

1 Like

Hi,

Disabling “display_errors” has fixed the problem. My apologies to Will, I had no idea that displaying errors could break a site in this way, although in retrospect it makes sense :slight_smile:

Thanks all,
Pete

I have followed the link regarding turning off error reporting in the php.ini file. No matter which settings I choose there is no change. I have changed the permissions as per this post |@Pete: Change the file permissions to 755. Also, set the permissions as 775 for these specific files/folders: cache, custom, modules, themes, data, upload, config_override.php

Which files however need to be changed to 755? Do the folders that require 775 need to be chmod recursively?

Hi there,

We recommend the following permissions for your SuiteCRM instance:

sudo chown -R www-data:www-data .

sudo chmod -R 755 .

sudo chmod -R 775 cache custom modules themes data upload config_override.php

Thanks,

Will.

You also need to restart your apache server after making changes to your php.ini. For example:

sudo service apache2 restart.

Thanks,

Will.

Is there a reason why there are so many errors? I’ve run into a couple of strict standards errors with Joomla in the past but it’s always been a line or two. SuiteCRM just fills the entire page.

what version of php are you using?

5.4.24

Did everything Will suggested above.

this is in our current php ini

memory_limit = 128M
post_max_size = 132M
upload_max_filesize = 132M

php_value display_errors 0 ;
php_value error_reporting 30719 ;

also tried it with:
error_reporting = off
error_reporting = E_ALL & ~E_DEPRECATED

As I stated previously, everything was working until we did a yum update and recompiled php with mcrypt.

try changing error_reporting to E_ALL & ~E_DEPRECATED & ~E_STRICT

then restart apache

Same thing

Strict Standards: Declaration of SugarEmailAddress::save() should be compatible with SugarBean::save($check_notify = false) in /home/shieldse/public_html/crm/include/SugarEmailAddress/SugarEmailAddress.php on line 1110

Strict Standards: Declaration of Person::create_export_query() should be compatible with SugarBean::create_export_query($order_by, $where) in /home/shieldse/public_html/crm/include/SugarObjects/templates/person/Person.php on line 41

Strict Standards: Declaration of User::retrieve() should be compatible with Person::retrieve($id = -1, $encode = true, $deleted = true) in /home/shieldse/public_html/crm/modules/Users/User.php on line 41

Strict Standards: Declaration of User::create_export_query() should be compatible with Person::create_export_query(&$order_by, &$where, $relate_link_join = ‘’) in /home/shieldse/public_html/crm/modules/Users/User.php on line 41

Strict Standards: Declaration of User::create_new_list_query() should be compatible with SugarBean::create_new_list_query($order_by, $where, $filter = Array, $params = Array, $show_deleted = 0, $join_type = ‘’, $return_array = false, $parentbean = NULL, $singleSelect = false, $ifListForExport = false) in /home/shieldse/public_html/crm/modules/Users/User.php on line 41

Strict Standards: Declaration of User::list_view_parse_additional_sections() should be compatible with SugarBean::list_view_parse_additional_sections(&$list_form) in /home/shieldse/public_html/crm/modules/Users/User.php on line 41

Strict Standards: Declaration of Currency::retrieve() should be compatible with SugarBean::retrieve($id = -1, $encode = true, $deleted = true) in /home/shieldse/public_html/crm/modules/Currencies/Currency.php on line 236

Strict Standards: Non-static method UploadStream::register() should not be called statically in /home/shieldse/public_html/crm/include/entryPoint.php on line 181

Strict Standards: Non-static method SugarConfig::getInstance() should not be called statically, assuming $this from incompatible context in /home/shieldse/public_html/crm/include/SugarLogger/LoggerManager.php on line 73

Strict Standards: Non-static method SugarConfig::getInstance() should not be called statically, assuming $this from incompatible context in /home/shieldse/public_html/crm/include/SugarLogger/SugarLogger.php on line 118

Strict Standards: Declaration of MysqlManager::checkQuery() should be compatible with DBManager::checkQuery($sql, $object_name = false) in /home/shieldse/public_html/crm/include/database/MysqlManager.php on line 1497

Strict Standards: Non-static method LogicHook::initialize() should not be called statically in /home/shieldse/public_html/crm/include/entryPoint.php on line 236

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /home/shieldse/public_html/crm/include/SugarEmailAddress/SugarEmailAddress.php:1110) in /home/shieldse/public_html/crm/include/MVC/SugarApplication.php on line 594

Strict Standards: Non-static method LogicHook::initialize() should not be called statically, assuming $this from incompatible context in /home/shieldse/public_html/crm/include/MVC/SugarApplication.php on line 611

Warning: Cannot modify header information - headers already sent by (output started at /home/shieldse/public_html/crm/include/SugarEmailAddress/SugarEmailAddress.php:1110) in /home/shieldse/public_html/crm/include/utils.php on line 2695

Strict Standards: Non-static method ControllerFactory::getController() should not be called statically, assuming $this from incompatible context in /home/shieldse/public_html/crm/include/MVC/SugarApplication.php on line 71

Strict Standards: Non-static method LogicHook::initialize() should not be called statically in /home/shieldse/public_html/crm/include/utils.php on line 3014

Strict Standards: Non-static method Tracker::logPage() should not be called statically in /home/shieldse/public_html/crm/include/utils.php on line 3025

Strict Standards: Non-static method SugarConfig::getInstance() should not be called statically in /home/shieldse/public_html/crm/include/utils/sugar_file_utils.php on line 362

I should note this is not running on XAMPP or WAMP. This is on a Cpanel/WHM dedicated server with CentOS 6.5

is it def the right php.ini you are editing and does it re-define error_reporting after where you are setting it?

It’s the php.ini file at the root of the /www directory for the hosting account.

I didn’t understand the second half of your question?

Here are the contents of the php.ini

memory_limit = 128M
post_max_size = 132M
upload_max_filesize = 132M

error_reporting=E_ALL & ~E_DEPRECATED & ~E_STRICT

is that all just those 4 lines?

that’s it