Internal Server Errors
Permalink
Google told me that I had an abrupt increase in server (500) errors on my sitehttp://gospelriver.com on June 15 so I checked my error logs and found the following errors on some of my Concrete5 sites, among many others. Does anyone know what I can do to fix these? I don't want to upgrade yet because it breaks my site menu. These errors existed before June 15 but I don't know why the increase would have been as I haven't been changing my sites much.
PHP Fatal error: Class 'Concrete5_Model_File' not found in .../updates/concrete5.6.0.2/concrete/models/file.php on line 3
PHP Fatal error: Class 'Concrete5_Model_GroupSetList' not found in /updates/concrete5.6.0.2/concrete/models/group_set_list.php on line 2
PHP Fatal error: Class 'Concrete5_Model_SystemNotification' not /updates/concrete5.6.0.2/concrete/models/system_notification.php on line 3
PHP Fatal error: Class 'Concrete5_Model_SignupRequest' not found in /updates/concrete5.6.0.2/concrete/models/signup_request.php on line 2
Class 'Concrete5_Model_File' not found in /updates/concrete5.6.0.2/concrete/models/file.php on line 3
PHP Fatal error: Class 'Concrete5_Model_GroupSetList' not found in /updates/concrete5.6.0.2/concrete/models/group_set_list.php on line 2
PHP Fatal error: Class 'Concrete5_Model_MarketplaceRemoteItem' not found in/updates/concrete5.6.0.2/concrete/models/marketplace_remote_item.php on line 13
PHP Fatal error: Class 'Loader' not found in /updates/concrete5.6.0.2/concrete/startup/autoload.php on line 216
PHP Fatal error: Class 'Loader' not found in /updates/concrete5.6.0.2/concrete/startup/autoload.php on line 216
PHP Fatal error: Class 'Object' not found in /updates/concrete5.6.0.2/concrete/core/models/system/antispam/library.php on line 3
etc etc
PHP Fatal error: Class 'Concrete5_Model_File' not found in .../updates/concrete5.6.0.2/concrete/models/file.php on line 3
PHP Fatal error: Class 'Concrete5_Model_GroupSetList' not found in /updates/concrete5.6.0.2/concrete/models/group_set_list.php on line 2
PHP Fatal error: Class 'Concrete5_Model_SystemNotification' not /updates/concrete5.6.0.2/concrete/models/system_notification.php on line 3
PHP Fatal error: Class 'Concrete5_Model_SignupRequest' not found in /updates/concrete5.6.0.2/concrete/models/signup_request.php on line 2
Class 'Concrete5_Model_File' not found in /updates/concrete5.6.0.2/concrete/models/file.php on line 3
PHP Fatal error: Class 'Concrete5_Model_GroupSetList' not found in /updates/concrete5.6.0.2/concrete/models/group_set_list.php on line 2
PHP Fatal error: Class 'Concrete5_Model_MarketplaceRemoteItem' not found in/updates/concrete5.6.0.2/concrete/models/marketplace_remote_item.php on line 13
PHP Fatal error: Class 'Loader' not found in /updates/concrete5.6.0.2/concrete/startup/autoload.php on line 216
PHP Fatal error: Class 'Loader' not found in /updates/concrete5.6.0.2/concrete/startup/autoload.php on line 216
PHP Fatal error: Class 'Object' not found in /updates/concrete5.6.0.2/concrete/core/models/system/antispam/library.php on line 3
etc etc

I just submitted a how-to on this. I will post a link as soon as it is approved.
They rejected it, claiming it would may not work for upcoming versions.
I hope this helps!
Backup the database!!! If this process fails, you can restore the site without recreating it. Do not skip this step.
Next, download a previous version of C5. Don't go too far back or you will have to upgrade in steps. The previous version should work well. Once it has downloaded, unzip it to somewhere that you will remember.
Open the root directory where C5 is installed. Find the updates folder. Copy the version you just unzipped into this folder.
Once it has finished copying, open that folder and go to concrete > config. Open the version.php file and change the version number to a higher version, I chose 5.7.0 while testing this method, even though it doesn't exist. Just make sure you change it to a number that is higher than the current version you have installed. Save the version.php and close it.
Go back to the updates folder and change the number at the end to the number you chose in the last step.
You are almost done! Go to your site. Navigate to Dashboard > System & Settings > Update Concrete5. If it does not tell you that there is a new version out, should be the number that you chose in step 4, make sure you refresh it a couple times. I tested this twice and the first time it took it a few refreshes to show up. You can also try in a different browser if you wish.
Click update. If all goes well, it will show a screen that says that is successfully updated. If you see this, don't party yet. There is one more step.
Go to the home page and make sure the site shows up fine. If so, hooray!!! You just downgraded C5! Now you can re-upgrade to the latest version.
I can't guarantee 100% that this method won't cause errors. If it does gives you an error, there is a easy way to fix it.
Open the root directory where C5 is installed. Find the updates folder. Delete the version you copied into it.
Now you need to go to the root C5 folder again and then go to concrete > config. Open the site.php file in a text editor like Notepad or Bluefish.
You should see a line that speaks of an update. Get rid of it. Most likely it will be at the end of the PASSWORD_SALT line. Save the file and close it.
Go back to your site and refresh. Bam! There it is in it's full glory!
Hopefully this works for you. If it doesn't, try to restore the database with the backup you made. You did make a backup right?
I hope this helps!
Backup the database!!! If this process fails, you can restore the site without recreating it. Do not skip this step.
Next, download a previous version of C5. Don't go too far back or you will have to upgrade in steps. The previous version should work well. Once it has downloaded, unzip it to somewhere that you will remember.
Open the root directory where C5 is installed. Find the updates folder. Copy the version you just unzipped into this folder.
Once it has finished copying, open that folder and go to concrete > config. Open the version.php file and change the version number to a higher version, I chose 5.7.0 while testing this method, even though it doesn't exist. Just make sure you change it to a number that is higher than the current version you have installed. Save the version.php and close it.
Go back to the updates folder and change the number at the end to the number you chose in the last step.
You are almost done! Go to your site. Navigate to Dashboard > System & Settings > Update Concrete5. If it does not tell you that there is a new version out, should be the number that you chose in step 4, make sure you refresh it a couple times. I tested this twice and the first time it took it a few refreshes to show up. You can also try in a different browser if you wish.
Click update. If all goes well, it will show a screen that says that is successfully updated. If you see this, don't party yet. There is one more step.
Go to the home page and make sure the site shows up fine. If so, hooray!!! You just downgraded C5! Now you can re-upgrade to the latest version.
I can't guarantee 100% that this method won't cause errors. If it does gives you an error, there is a easy way to fix it.
Open the root directory where C5 is installed. Find the updates folder. Delete the version you copied into it.
Now you need to go to the root C5 folder again and then go to concrete > config. Open the site.php file in a text editor like Notepad or Bluefish.
You should see a line that speaks of an update. Get rid of it. Most likely it will be at the end of the PASSWORD_SALT line. Save the file and close it.
Go back to your site and refresh. Bam! There it is in it's full glory!
Hopefully this works for you. If it doesn't, try to restore the database with the backup you made. You did make a backup right?
Thanks for sharing your solution!
Do you know why downgrading and then upgrading fixes the php errors?
Do you know why downgrading and then upgrading fixes the php errors?
Technically it doesn't fix anything. The problem still exists in the original C5 installation.
However, you are no longer using those original files. When you updated, it changed where is was looking to for it's core files to the updates folder. Since something went wrong with the files in the original installation, it doesn't show up now since you are not using them.
It is kinda like changing where a domain points. Instead of pointing to the root folder, it now points to the updates folder.
However, you are no longer using those original files. When you updated, it changed where is was looking to for it's core files to the updates folder. Since something went wrong with the files in the original installation, it doesn't show up now since you are not using them.
It is kinda like changing where a domain points. Instead of pointing to the root folder, it now points to the updates folder.