Cannot access log in, Fatal Error and page forbidden

Permalink
When I try to access the login page I receive :
Page Forbidden

You are not authorized to access this page.

When I try typing in the web address I receive this Fatal error:

Fatal error: Block::getInstance() [<a href='block.getinstance'>block.getinstance</a>]: The script tried to execute a method or access a property of an incomplete object. Please ensure that the class definition "DashboardFeaturedAddonBlockController" of the object you are trying to operate on was loaded _before_ unserialize() gets called or provide a __autoload() function to load the class definition in /hermes/bosweb26a/b1554/ipg.inkersinkcom/uptownreader.ca/concrete/models/block.php on line 328


I have tried "repair table PageStatistics;" in Mysql and that did not work. and as well I have deleted and reinstalled concrete5 a number of times.

 
ScottC replied on at Permalink Best Answer Reply
ScottC
i've come across this myself for something entirely unrelated to not being able to access this certain controller.

What this did that allowed me to login was simply in your case i guess create a file at config/site_post.php (if it isn't already there);
Loader::model('block_types');
      $blist = BlockTypeList::getInstalledList();
      if($blist) foreach($blist as $block){
         //yeah pretty cool bug here, gotta load every single block up
         Loader::controller($block);
      } //redacted vulgarities


It has to do with trying to load a class that concrete5 isn't aware of..it is probably some sort of obscure cache issue but this should fix it. Again put that in a file named site_post.php under your config directory.
ScottC replied on at Permalink Reply
ScottC
and this is a monkey patch you'd also want to check via printing Request::get()->getRequestPath() and compare it to "/login"

This will probably slow down you page loads a bit so its best to rectify this in other ways.

-Scott
uptownreader replied on at Permalink Reply
Hey ScottC

Thanks for the response, I was quite caught up in finding the answer to the problem via mysql. After I checked for site_post.php under config, I realized there were multiple missing or misplaced files from a previous installation of a cms that was not properly deleted.

It ended up being quite straight forward.

-Del