Bluehost Issues
A handful of issues have been known to crop up on Backlight sites hosted on Bluehost. This article serves to provide solutions and workarounds to these issues.
While the below is written specifically with issues experienced with Bluehost, it is likely that some issues and solutions will apply to other hosts.
Sending Email
The Problem
You are not receiving emails from Backlight
The Cause
Outgoing emails from your site need to have the //From// value set correctly. Backlight attempts to use your Company Name and Vendor Email, as found in the Backlight Settings, for this.
Bluehost however will only set the From value correctly if it trusts the values you are trying to use. If not, a generic From setting will be used, which causes outgoing emails to be picked up as spam and either not go out at all or be dropped between your server and the inbox where you are trying to receive email.
The Solution
The following steps need to be taken to receive emails reliably from Bluehost:
Configure the Email address within Bluehost
- Log into your Bluehost Control Panel
- Click on "Email Manager"
- Click on "Create Email Account"
- Set up an account matching your domain that you wish to use as the From email. Note that you do not actually need to use Bluehost as an email provider. This step only informs Bluehost that the address is valid and known to them.
- Set the above email address as the Vendor Email in your Backlight Settings
Configure the PHP sendmail_path setting
- Log into your Bluehost Control Panel
- Visit the "PHP Config" section
- Check that the selected version of PHP is one with (Single php.ini), e.g. PHP 5.4 (Single php.ini)
- If not, change the selected version and click "Save Changes"
- Log into your site via FTP
- Look for a file named
php.ini
under yourpublic_html
directory - Edit the file and change the value for
sendmail_path
. This line should have the preceding semi-colon removed, and look like the following, substitutingyou@yourcompany.com
with the email address created above:
sendmail_path = /usr/sbin/sendmail -t -i -f'you@yourcompany.com'
The setting can then be verified by logging into Backlight, clicking on //View PHP Info//, and checking the value for //sendmail_path//.
Slow Page Load Times
The Problem
Pages often take several seconds to load.
The Cause
One culprit we have come across is that some sites on Bluehost use network storage for site files. Backlight uses SQLite databases, a filesystem-based database system that by default expects the database files to be accessible on a local drive.
The Solution
The performance bottleneck can be removed by changing the database synchronisation settings. To do so:
- Log into Backlight
- Visit Backlight => Settings
- Click on "Advanced Settings" near the bottom of the page
- Click on "Edit Settings" near the top of the page
- Edit the two settings "SQLite Journal Mode" to have the value PERSIST and "SQLite Synchronous" to have the value OFF
For more information, see our explanation of SQLite Performance.
Module Errors
The Problem
You see errors such as:
Something went wrong
Unexpected error: Module 'ionCube Loader' already loaded in Unknown on line 0
Please report error at http://community.theturninggate.net
The Cause
According to Bluehost, these errors are caused by incorrect permissions set on PHP files. We have no information about how this arises.
The Solution
Below are three solutions to this problem.
1. Disable all optional extensions.
Bluehost provides a number of additional extensions. Backlight requires none of these. If you have no other software running on your site that depends on these, then you can safely disable them from your Control Panel:
- Log into your Bluehost Control Panel
- Visit the "PHP Config" Section
- Uncheck all selected modules under "Additional extensions available for Installation"
- Click "Save Changes"
Note: we have recently found that Bluehost may not always provide a list of Additional extensions that can be unchecked. Changing PHP version may provide a similar effect. We recommend changing to the latest version of PHP with single php.ini.
2. Have Bluehost fix this issue
- Contact Bluehost's technical support
- Inform them that you are receiving errors like the above
- Ask that they fix it by fixing the PHP permissions
Note that this last step can only be performed by Bluehost's support.
3. Backlight provides a mechanism to suppress startup errors
To activate this:
- Copy or rename the file backlight/env.php.skel to env.php
- Edit the file and remove the leading from the SUPRRESS_START_UP_ERRORS this line:
//define('SUPPRESS_STARTUP_ERRORS', true);
... so that it reads as:
define('SUPPRESS_STARTUP_ERRORS', true);
- Save the file
Unable to proceed beyond Admin login page
The Problem
After providing a Backlight admin login and clicking //Login//, the login page appears again, without any error message.
The Cause
Bluehost provides optional caching add-ons, such as Varnish and CloudFlare. The caching services may fail to handle user sessions properly, resulting in being unable to login to Backlight. Customer sessions such as for Cart and Client Response may also be impacted.
The Solution
Disable any caching services configured with your Bluehost account.
To disable CloudFlare:
- Log into your Bluehost Control Panel
- Click on "CloudFlare", under the "upgrade" section
- Select your domain under the "Disable CloudFlare" section
- Click "disable"
To disable Varnish:
- Follow the steps on the Bluehost support page: https://my.bluehost.com/cgi/help/turn_varnish_off
For further assistance, contact Bluehost's technical support.