0
我最近将Prestashop安装移到了一个新的托管中,该站点正常工作。但是每次我想修改的SEO & URL之一(后台>首选项> SEO &网址>点击一个页面上的表/ URL),我总是得到以下错误:Prestashop类AuthController不存在
Fatal error: Uncaught exception 'ReflectionException' with message 'Class AuthController_ does not exist' in /path/to/prestashop/folder/classes/Meta.php:71
Stack trace: #0 /path/to/prestashop/folder/classes/Meta.php(71): ReflectionClass->__construct('AuthController_')
#1 /path/to/prestashop/folder/controllers/admin/AdminMetaController.php(229): MetaCore::getPages(true, 'index')
#2 /path/to/prestashop/folder/classes/controller/AdminController.php(1428): AdminMetaControllerCore->renderForm()
#3 /path/to/prestashop/folder/classes/controller/Controller.php(167): AdminControllerCore->initContent()
#4 /path/to/prestashop/folder/classes/Dispatcher.php(349): ControllerCore->run()
#5 /path/to/prestashop/folder/ombroadmin/index.php(50): DispatcherCore->dispatch()
#6 {main} thrown in /path/to/prestashop/folder/classes/Meta.php on line 71
我不是知道在哪里看/开始,线Meta.php的71看起来是这样的:
foreach ($files as $file)
{
if ($file != 'index.php' && !in_array(strtolower(str_replace('Controller.php', '', $file)), $exlude_pages))
{
$reflection = new ReflectionClass(str_replace('.php', '', $file)); // #Line 71
$properties = $reflection->getDefaultProperties();
if (isset($properties['php_self']))
$selected_pages[$properties['php_self']] = $properties['php_self'];
else if (preg_match('/^[a-z0-9_.-]*\.php$/i', $file))
$selected_pages[strtolower(str_replace('Controller.php', '', $file))] = strtolower(str_replace('Controller.php', '', $file));
else if (preg_match('/^([a-z0-9_.-]*\/)?[a-z0-9_.-]*\.php$/i', $file))
$selected_pages[strtolower(sprintf(Tools::displayError('%2$s (in %1$s)'), dirname($file), str_replace('Controller.php', '', basename($file))))] = strtolower(str_replace('Controller.php', '', basename($file)));
}
}
嗨,感谢我发现错误,结果在/ controllers/front文件夹中有孤立的文件,名为AuthController_.php。看起来它是由某人作为备份创建的。我删除了该文件,它的工作原理。 – Jeremy