Jump to content

Upgrade to 7.10.1 Causes blank page


Recommended Posts

So I upgraded whmcs to the latest 7.10.1 via the automatic upgrader and it seemed to update fine but when i tried to log into the admin area i was greeted with a blank page. 

https://help.whmcs.com/m/95765/l/1233177-troubleshooting-a-blank-page-oops-error-message

Following the advice of the page above..  I fired up a text editor(notepad++) and tried to edit the configuration file  so i could enable debugging via the $display_errors = true;  but trying to "save" the file resulted in a 553 Can't open that file: Permission denied error. I then logged into cpanel and edited the configuration file via the file manager and i was able to edit the configuration file but with or without $display_errors = true; i get a blank admin page. Anyone have an idea on whats going on? 
 

 

Link to comment
Share on other sites

4 hours ago, web2008 said:

Please follow these steps to perform a manual update instead: https://docs.whmcs.com/Updating#Performing_a_Manual_Update

Thanks for the reply. I have a reseller account with a2 webshosting and whmcs came along with it. Unfortunately a2 doesnt provide the whmcs installer in zip format. They said i can only install via the scriptalicious installer.   

With my previous webhost (hostgator) i was able to have my web license show at whmcs.com and  i was able to download the full zip direct from whmcs. Evidently this is a privilege only for hostgator users. Is there anywhere else i can get the latest whmcs.zip? or what do you suggest? Is the scriptalicious installer similar to the built in auto updater that whmcs uses?  It doesnt appear you can upgrade a previous install that was not deployed with scriptalicious using that installer. 

 

 

Link to comment
Share on other sites

Unfortunately, I do not know what the various agreements are about, but you may only need the Incremental Patch from version 7.10 to 7.10.1 and a2 should be able to help you with this.

Otherwise, are you sure you got the configuration.php edited?
What permission do you have on the file?

Link to comment
Share on other sites

28 minutes ago, web2008 said:

Unfortunately, I do not know what the various agreements are about, but you may only need the Incremental Patch from version 7.10 to 7.10.1 and a2 should be able to help you with this.

Otherwise, are you sure you got the configuration.php edited?
What permission do you have on the file?

I think when i used the whmcs auto updater it got me up to 7.10.1. I upgraded from 7.4 i think it was so im not sure if i was too many versions behind or what. In terms of the incremental installer.. I will reach out to a2 again but via chat a rep told me they dont provide zip files and that i would have to make do with the scriptalicious installer.

The file permission on configuration.php is 444. Ive always edited files "on the server" with notepad++. Im not sure why im suddenly prompted with 553 Permission denied error when trying to save changes. I imagine its related to the problem but as i mention i was able to edit the file via the cpanel file manager but im still not getting errors just blank admin page.

Link to comment
Share on other sites

34 minutes ago, web2008 said:

It is difficult to know what is wrong, without any error messages.
The clientarea works fine?
Do you have any custom files?

Else, you can`t edit and save a file "on the server" with permissions 444 - so you must change it to 664 first and then back again.

Indeed, im not sure what is going on.. The client area works fine. I have a custom six theme and i use a menu manager but outside of that i cant think of anything that would stand out. Maybe some gateways i added. The permissions issue was caused by the update for sure. I restored from a backup and went back to my previous whmcs 7.4 installation and the permissions issue isnt there.  I then re-ran through the update via the auto updater and its back to a blank page for the admin area and the permissions issue returned. 

When i had restored from a backup i should have checked to see what the permissions were for the configuration file but i failed to do so. If revert back again i will check that first. Im not sure what else can cause this issue after update.

Im running php7.0 if that makes a difference. Maybe i should go through the minimum requirements with a fine tooth comb. I thought everything was up to par but thats the only other thing i can think of. Im grasping at air to be honest .. like you said it tough to know whats going on without errors.

 

Is there some sort of update log? Maybe something that gives detail about the update. From my end the update finishes without issue and i dont see a problem until i try to log in.

Advanced Menu Manager( this is the menu manager i use)

https://marketplace.whmcs.com/product/582

 

Link to comment
Share on other sites

11 hours ago, Johanis said:

Thanks for the reply. I have a reseller account with a2 webshosting and whmcs came along with it. Unfortunately a2 doesnt provide the whmcs installer in zip format. They said i can only install via the scriptalicious installer. 

scriptalicious or softaculous ?

11 hours ago, Johanis said:

With my previous webhost (hostgator) i was able to have my web license show at whmcs.com and  i was able to download the full zip direct from whmcs. Evidently this is a privilege only for hostgator users. Is there anywhere else i can get the latest whmcs.zip?

download.whmcs.com is members only, so that's not an option; whmcs resellers will often make the full zip download available on their sites, but usually for their clients only (e.g you need to login); I have the full zip, but i'm sure WHMCS wouldn't want me to distribute it.

you should be entitled to contact WHMCS Reseller Support for technical help and support, but if memory serves, they don't give out the zip files either.

you can certainly contact them for help if you need to - in addition to a2 support.

12 hours ago, Johanis said:

 Is the scriptalicious installer similar to the built in auto updater that whmcs uses?

i've never used scriptalicous for installing, but I doubt it.

12 hours ago, Johanis said:

It doesn't appear you can upgrade a previous install that was not deployed with scriptalicious using that installer.  

i'm wondering if the a2 WHMCS installs are customised to suit their servers - it's possible that by running the auto updater, you've removed any such customisations and that's the cause of the issue... however, only a2 will now if that's the case.

12 hours ago, web2008 said:

you may only need the Incremental Patch from version 7.10 to 7.10.1 and a2 should be able to help you with this.

I think anyone can download the recent incremental patches from download.whmcs.com

11 hours ago, Johanis said:

In terms of the incremental installer.. I will reach out to a2 again but via chat a rep told me they dont provide zip files and that i would have to make do with the scriptalicious installer.

in your situation, the incremental updates are not relevant - they're only for minor upgrades on the existing major version, e.g from 7.10 to v7.10.1, or v7.4.2 to v7.4.3 - if you were going from v7.4.1 to v7.10.1, an incremental patch would not be enough and you would need the full zip file.

39 minutes ago, Johanis said:

Indeed, im not sure what is going on.. The client area works fine. I have a custom six theme and i use a menu manager but outside of that i cant think of anything that would stand out.

I doubt AMM would be the issue - i've seen it working on versions later than v7.5 and i've no reason to think v7.10 would break it.

41 minutes ago, Johanis said:

The permissions issue was caused by the update for sure. I restored from a backup and went back to my previous whmcs 7.4 installation and the permissions issue isnt there.  I then re-ran through the update via the auto updater and its back to a blank page for the admin area and the permissions issue returned. 

have a2 said whether you can install WHMCS with scriptalicous and use an existing WHMCS database?

if so, i'd be tempted to duplicate the v7.4 database and try it... but the unknown in all this is why a2 needs it to be installed via scriptalicious

45 minutes ago, Johanis said:

Im running php7.0 if that makes a difference.

it shouldn't be - i've had it running on 5.6 and 7.3.

49 minutes ago, Johanis said:

Is there some sort of update log? Maybe something that gives detail about the update. From my end the update finishes without issue and i dont see a problem until i try to log in.

the tblupdatelog database table should have more details, but if you're restored a previous version, then this might now be lost.

https://docs.whmcs.com/Automatic_Updater

https://help.whmcs.com/m/updating

Link to comment
Share on other sites

I came across your post looking for something else, and I'm coming in late, so forgive me if I missed something. I can sympathize, because I'm also using WHMCS through my host and they won't provide access to the *.zip file, either.

When I've run into a white screen of death with an upgrade--which I have a few times over the years with WHMCS--the underlying PHP error has been a leftover file from an earlier install.

Finding the offending file and removing it does the trick; however, you need to find the file(s) involved, and seeing the error messages PHP throws makes that much easier.

Were you able to change the file permissions and enable error display as suggested? That will usually give you the name of the problem file. You can then back things up, delete the file, and give WHMCS another try.

The other thing that I've done in the past is to log on to the server via SSH and use the command below from the WHMCS folder(s) to find files that are older than the upgrade and may have been left over from a previous installation and not cleaned up. This only works when you do a major version upgrade, not a patch or incremental upgrade, because the latter doesn't update all the files:
 

find -type f -mtime +1

Change the "+1" to the number of days you want to go back to catch files before the upgrade.  Make sure you have a backup of all your files before trying this! Ideally, you have a *.zip of the current version to compare the files to in order to make sure you don't delete something necessary. You can't use a patch file because it won't contain all the files. Since you don't have access to the *.zip file, you'll need to make sure you have a backup of your files, if you try this. You will also need to skip over any files you've modified and your custom template/theme as well as your configuration file, of course. Basically, you just go through the list of files using cPanel's File Manager and delete anything that is older than the date of the major version upgrade you just ran.

The other thing you might try to get a list of all the files for the new version is to install WHMCS in a new folder using Softaculous, then use cPanel's file manager to create a *.zip file of everything in that folder and download it to get a set of the original files, then delete that installation.

Link to comment
Share on other sites

23 hours ago, brian! said:

scriptalicious or softaculous ?

download.whmcs.com is members only, so that's not an option; whmcs resellers will often make the full zip download available on their sites, but usually for their clients only (e.g you need to login); I have the full zip, but i'm sure WHMCS wouldn't want me to distribute it.

you should be entitled to contact WHMCS Reseller Support for technical help and support, but if memory serves, they don't give out the zip files either.

you can certainly contact them for help if you need to - in addition to a2 support.

i've never used scriptalicous for installing, but I doubt it.

i'm wondering if the a2 WHMCS installs are customised to suit their servers - it's possible that by running the auto updater, you've removed any such customisations and that's the cause of the issue... however, only a2 will now if that's the case.

I think anyone can download the recent incremental patches from download.whmcs.com

in your situation, the incremental updates are not relevant - they're only for minor upgrades on the existing major version, e.g from 7.10 to v7.10.1, or v7.4.2 to v7.4.3 - if you were going from v7.4.1 to v7.10.1, an incremental patch would not be enough and you would need the full zip file.

I doubt AMM would be the issue - i've seen it working on versions later than v7.5 and i've no reason to think v7.10 would break it.

have a2 said whether you can install WHMCS with scriptalicous and use an existing WHMCS database?

if so, i'd be tempted to duplicate the v7.4 database and try it... but the unknown in all this is why a2 needs it to be installed via scriptalicious

it shouldn't be - i've had it running on 5.6 and 7.3.

the tblupdatelog database table should have more details, but if you're restored a previous version, then this might now be lost.

https://docs.whmcs.com/Automatic_Updater

https://help.whmcs.com/m/updating

Im sorry.. I mixed up the two. I meant softaculous. In terms of using softaculous to install and duplicate the database .. i havent tried that. From what i cant tell softaculous doesnt provide un upgrade route for installations that were not made with softaculous. Thanks for the tidbit about "tblupdatelog". I didnt know about that.

 

 

20 hours ago, web2008 said:

As brian! says, a2 should help you with this, as there is a lot we do not know.

Otherwise, I thought you upgraded from 7.10.0

A2 has not been helpful.. Im not sure why they cant just provide the full zip. In general i dont think they have ever helped with any whmcs issues that resulted with a fix to the issue. They end up simply referring me to the folks at whmcs.  Ive had a pretty good time at a2 but there are some annoyances like this that stand out. I just cant think of any reason not to make the full zip available.

16 hours ago, linux4me said:

I came across your post looking for something else, and I'm coming in late, so forgive me if I missed something. I can sympathize, because I'm also using WHMCS through my host and they won't provide access to the *.zip file, either.

When I've run into a white screen of death with an upgrade--which I have a few times over the years with WHMCS--the underlying PHP error has been a leftover file from an earlier install.

Finding the offending file and removing it does the trick; however, you need to find the file(s) involved, and seeing the error messages PHP throws makes that much easier.

Were you able to change the file permissions and enable error display as suggested? That will usually give you the name of the problem file. You can then back things up, delete the file, and give WHMCS another try.

The other thing that I've done in the past is to log on to the server via SSH and use the command below from the WHMCS folder(s) to find files that are older than the upgrade and may have been left over from a previous installation and not cleaned up. This only works when you do a major version upgrade, not a patch or incremental upgrade, because the latter doesn't update all the files:
 


find -type f -mtime +1

Change the "+1" to the number of days you want to go back to catch files before the upgrade.  Make sure you have a backup of all your files before trying this! Ideally, you have a *.zip of the current version to compare the files to in order to make sure you don't delete something necessary. You can't use a patch file because it won't contain all the files. Since you don't have access to the *.zip file, you'll need to make sure you have a backup of your files, if you try this. You will also need to skip over any files you've modified and your custom template/theme as well as your configuration file, of course. Basically, you just go through the list of files using cPanel's File Manager and delete anything that is older than the date of the major version upgrade you just ran.

The other thing you might try to get a list of all the files for the new version is to install WHMCS in a new folder using Softaculous, then use cPanel's file manager to create a *.zip file of everything in that folder and download it to get a set of the original files, then delete that installation.

 

 

Thanks for chiming in:  @ Install via Softaculous to a separate folder simply to grab the installation files. ( Thats brilliant! ) I think im gonna try that! 

In terms of the left over php files, my install is pretty vanilla. Except for a menu manager and some gateways. Btw, even enabling errors to the configuration files does not result in showing errors. Im scratching my head at that. If there is no error then why the blank page? Im not sure if thats a result of some permission problem. The permission issue happens only after upgrading. If i revert back to 7.4 via a backup there is no permission issue.

 

If getting the install files from Softaculous doesn't work ill see if i can find the php file thats causing this via SSH like you said.

Link to comment
Share on other sites

6 hours ago, Johanis said:

Btw, even enabling errors to the configuration files does not result in showing errors.

That is a head-scratcher. It seems like there's got to be an error somewhere. I wonder if WHMCS is resetting Setup -> General -> Other -> Display Errors to null when you update, then you can't access it once you're getting the white screen of death? One thing you might try is once you've upgraded and you're getting the white screen, use phpMyAdmin in your WHMCS database to find the table tblconfiguration and run the following SQL query to quickly locate the DisplayErrors setting:

SELECT * FROM `tblconfiguration` WHERE setting = 'DisplayErrors'

The 'value' column will be empty if  Display Errors is disabled (unchecked), and set to "on" if it's enabled.  If the column is empty, that's why you're not seeing errors displayed. Try editing that column to "on" and see if you get errors displayed.

The other places to look for an error are in the /logs folder of your site (which you've probably already done) and in cPanel -> Metrics -> Errors. The latter may show permissions errors even with WHMCS overriding your PHP error display.

Link to comment
Share on other sites

6 hours ago, linux4me said:

That is a head-scratcher. It seems like there's got to be an error somewhere. I wonder if WHMCS is resetting Setup -> General -> Other -> Display Errors to null when you update, then you can't access it once you're getting the white screen of death? One thing you might try is once you've upgraded and you're getting the white screen, use phpMyAdmin in your WHMCS database to find the table tblconfiguration and run the following SQL query to quickly locate the DisplayErrors setting:


SELECT * FROM `tblconfiguration` WHERE setting = 'DisplayErrors'

The 'value' column will be empty if  Display Errors is disabled (unchecked), and set to "on" if it's enabled.  If the column is empty, that's why you're not seeing errors displayed. Try editing that column to "on" and see if you get errors displayed.

The other places to look for an error are in the /logs folder of your site (which you've probably already done) and in cPanel -> Metrics -> Errors. The latter may show permissions errors even with WHMCS overriding your PHP error display.

Yeah im not sure whats up. I followed your direction and set the database value to "on" but no joy.. I tried looking in the cpanel metrics -> errors but it said "No recent web server errors exist for your domain:".

 

Maybe its a php file like you said. Im gonna see if i can try via SSH like you said and see what i can find.

db errors on.png

Link to comment
Share on other sites

Well, this is getting more interesting. If you have a white page, you have a PHP error as far as I know. Where is it?

In previous versions of WHMCS, the value to enable DisplayErrors was "1," not "on." So I did a little experiment. I set the value of DisplayErrors in the tblconfiguration table to "on" using phpMyAdmin, and confirmed that on Help -> System Health Status that it showed me Display Errors was enabled. So far so good.

Next, I edited the file /admin/systemhealthandupdates.php, which is the file that generates the page for System Health Status, and added a PHP error into the file. I refreshed the page, and despite the fact that I had Display Errors enabled, all I got was a white page, no error.

I did a little exploring, and found that although I have Display Errors enabled, not log errors, the error message for the error I introduced was in /home/username/logs/mydomain.php.error.log.

Have you tried using cPanel's File Manager to see if you have any error log files in your /home/username/logs? That might be where the errors are hiding.

I suspect that this behavior may be a conflict between what WHMCS is trying to do and the settings in the php.ini for your account. For example, in mine, I have display_errors set to "off" and log_errors set to "on," so that might account for this.

I certainly think it's worth going through and deleting the obsolete files that aren't for your custom template, modules, and configuration, but finding the error message(s) would be my first task.

If you have no error log in the folder noted above, you might want to check the settings you have for error handling in the php.ini for the version of PHP your WHMCS installation is using, and make sure log_errors is set to "On."

By the way, I found this article, which describes a different method of enabling Display Errors using the configuration file, but my testing suggests that the database method works as well.

Edited by linux4me
Link to comment
Share on other sites

8 hours ago, linux4me said:

Well, this is getting more interesting. If you have a white page, you have a PHP error as far as I know. Where is it?

In previous versions of WHMCS, the value to enable DisplayErrors was "1," not "on." So I did a little experiment. I set the value of DisplayErrors in the tblconfiguration table to "on" using phpMyAdmin, and confirmed that on Help -> System Health Status that it showed me Display Errors was enabled. So far so good.

Next, I edited the file /admin/systemhealthandupdates.php, which is the file that generates the page for System Health Status, and added a PHP error into the file. I refreshed the page, and despite the fact that I had Display Errors enabled, all I got was a white page, no error.

I did a little exploring, and found that although I have Display Errors enabled, not log errors, the error message for the error I introduced was in /home/username/logs/mydomain.php.error.log.

Have you tried using cPanel's File Manager to see if you have any error log files in your /home/username/logs? That might be where the errors are hiding.

I suspect that this behavior may be a conflict between what WHMCS is trying to do and the settings in the php.ini for your account. For example, in mine, I have display_errors set to "off" and log_errors set to "on," so that might account for this.

I certainly think it's worth going through and deleting the obsolete files that aren't for your custom template, modules, and configuration, but finding the error message(s) would be my first task.

If you have no error log in the folder noted above, you might want to check the settings you have for error handling in the php.ini for the version of PHP your WHMCS installation is using, and make sure log_errors is set to "On."

By the way, I found this article, which describes a different method of enabling Display Errors using the configuration file, but my testing suggests that the database method works as well.

Thanks for the link, I had actually tried the E_NOTICE and E_ALL entrys in the config file but no joy. Also the cpanel is where i went first trying to find errors when i couldnt get whmcs to trigger it with the config file but nothing there either. Last night i tried to use the SSH method you proposed and there was just too many files. Many files in the module folders.. Anyway, i got frustrated and i ended up putting in a ticket with WHMCS.

Guess what..  Whmcs support was lightning fast in response and said it was a php file in the lang folder in the admin directory so you were right about it being a php file.

 They said they renamed it for me but when i logged in my admin area was still blank. I think the problem gives a false impression because the login screen actually "shows" and it looks like all is working but its not unitil you login that it goes blank. Im waiting for a response now.. Im still trying to figure out what the deal was with the permissions tho.

On a side note when i looked at the configuration file after whmcs looked at it there was a line commented out.

//$disable_hook_loading = true;

Not sure how he figured out it was the php file in the lang directory but i wonder if this hook loading line was used? I will let you know what else  i find out. 

 

 

 

 

 

Link to comment
Share on other sites

14 hours ago, Johanis said:

$disable_hook_loading = true;

I looked in my configuration file, and I don't have that line in there at all, commented out or not.  I suspect they added that for debugging, and then commented it out when they were done.

Your mention of the language file triggered a memory for me. Take a look at this post regarding my upgrade from 7.4.2 to 7.5.

14 hours ago, Johanis said:

I will let you know what else  i find out. 

Please do! I'm really curious to know what's causing this, though I think the post above resolves the question about the error messages; I wasn't getting any back then, either. It will be worth testing to see if your error logging works otherwise, just in case.

Link to comment
Share on other sites

5 hours ago, linux4me said:

I looked in my configuration file, and I don't have that line in there at all, commented out or not.  I suspect they added that for debugging, and then commented it out when they were done.

Your mention of the language file triggered a memory for me. Take a look at this post regarding my upgrade from 7.4.2 to 7.5.

Please do! I'm really curious to know what's causing this, though I think the post above resolves the question about the error messages; I wasn't getting any back then, either. It will be worth testing to see if your error logging works otherwise, just in case.

So as it turned out the support agent at whmcs had fixed it the first time and i just needed to clear my cache. That said the initial diagnosis stands. The problem was a file called "adminlangupdate.php" in the lang folder inside the "admin" directory. As far as the permission issue with the configuration.php file, there is a directive with said file and its permissions. ( https://docs.whmcs.com/Further_Security_Steps#Secure_the_.60configuration.php.60_File ). Not sure if thats a new thing or not .. I was several iterations behind so maybe that came with a previous whmcs update. 

So mystery solved. As far as the disable hooks line in configuration.php. The support agent told me he added it as part of the debugging. I asked him how he found the offending file with no errors and he told me disabled hooks,  uploaded a fresh set of files, checked on common files, admin lang files and was able to run down the offending file. 

Thanks for all your help, its much appreciated!

 

4 hours ago, web2008 said:

Thanks for that. I was wondering how that was used. 

 

 

On 4/20/2020 at 3:00 AM, brian! said:

 

Contact WHMCS Reseller Support for technical help and support, but if memory serves, they don't give out the zip files either.

 

I used the reseller link to access support and they took care of me. You were right .. I didnt get a zip 🙂

Thanks for the link.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use & Guidelines and understand your posts will initially be pre-moderated