Joomla-如何将所有异常/错误重定向到404页面或返回主页

Joomla-如何将所有异常/错误重定向到404页面或返回主页,joomla,Joomla,我目前正在使用Joomla,我们的系统中有一个小的安全漏洞 乌里。目前,它直接向用户显示异常/错误,如下所示: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '' at line 我觉得这是SQL注入的风险 我如何继续并强制所有异常/错误重定向到主页?只有当有人直接操作

我目前正在使用Joomla,我们的系统中有一个小的安全漏洞 乌里。目前,它直接向用户显示异常/错误,如下所示:

You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '' at line 
我觉得这是SQL注入的风险

我如何继续并强制所有异常/错误重定向到主页?只有当有人直接操作URI而不是通过单击页面时,才会发生此错误


如果有帮助的话,我相信这个问题是由我们正在使用的一个组件造成的,它直接查询URI而不是使用准备好的语句,但我似乎无法确定它在哪里。

如果这在Joomla中返回了一个正确的异常!把你送到乔姆拉去!”s 500错误输出,您应该能够从模板(/templates/yourtemplate/error.php)中的error.php文件中截取它

如果此文件不存在,您可以简单地创建它,但请注意,它将承担所有异常的责任,因此404将通过此文件进行渲染,因此您需要确保其格式良好

要捕获500错误并将其重定向到主页,只需在“defined(''u JEXEC')或“die;”下面添加以下代码即可声明

if($this->error->getCode() == 500){
  header("Location: " . $this->baseurl);
  die();
}
如果错误消息包含对SQL的引用,您可以更详细地进行重定向,但我要说的是,根据您的描述,您实际上不希望显示任何自定义的500条错误消息,因此您可以重定向所有内容

希望这有帮助。
KevBallard

这个问题可能会引起更多的关注,因为一个即时的解决方案会改变全局配置中的错误显示级别。你不想只是重定向到主页,这将是不好的搜索引擎优化将使网页重定向到404。