Installing CakePHP 2.0 and Getting “Class 'Component' not found” error
-
27-10-2019 - |
Question
I decided instead of using the migration guide/shell for the upgrade from 1.3 to 2.0 of CakePHP to just go with a vanilla installation of it. For some reason, I'm getting this error:
Fatal error: Class 'Component' not found in /home/bob_cobb/public_html/mydomain.com/lib/Cake/Controller/Component/SessionComponent.php on line 32
When trying to access my website. I looked to see if SessionComponent.php even exists and it doesn't on my server, nor in the 2.0 repository. Do I need to create this file or something? (Edit: The file exists.)
Solution
its not about the sessioncomponent but the Component class itself:
App::uses('Component', 'Controller');
This declaration says where to find it. But cake doesnt seem to find it. so it is probably missing.
it should be in /Cake/Controller/
OTHER TIPS
Actually, SessionComponent.php
does exist, at least in the official 2.0.6 repository. Your download/upgrade was probably corrupted. Try adding the file to your server. If you're lucky, that's the only issue; more likely, though, you'll need to reupgrade.
I'm not sure where you're looking, but SessionComponent.php does actually exist in the 2.0.x repo:
https://github.com/cakephp/cakephp/blob/master/lib/Cake/Controller/Component/SessionComponent.php
You may want to re-download your whole /lib section if you're missing files.