php - Joomla 2.5 无 404 页面

标签 php joomla

我的 Joomla 安装遇到问题。 这是一个相当 Vanilla 的J! 2.5(最新版本)使用K2安装(我认为这与我的问题无关)。 问题是我编写的任何 URL(例如 http://www.mysite.com/No-Such-URL-At-All )都会出现以下错误:

错误 文章未找到 您无权查看此资源。

我创建了一个 error.php 文件,应该在模板中处理它,但 Joomla 根本不使用它,因为我不认为它真的被作为错误处理,而是作为权限重定向:\

所以我尝试将此代码添加到我的模板中:

代码:

if (($this->error->code) == '404') {
header('Location: /404.html');
exit;   

但是没有检测到错误,代码也被忽略。

我检查了服务器的响应 header ,但实际上我得到了响应 200,好的响应:.

一些可能有用的附加数据 - 它托管在godaddy专用的centos服务器上 - SEF 已启用(禁用时问题仍然存在) 如果有任何其他信息可以帮助我,请告诉我...

我实在想不出其他的方向,也许有人知道为什么 404 会变成权限重定向?

最佳答案

检查当您遇到 404 错误时,Joomla 是否正在点击“com_content”组件(检查 $_REQUEST 变量)。我遇到了这个问题,但事实证明它不是,它击中了我的自定义组件之一。如果是这种情况,您需要执行以下操作来修复它。对于此示例,假设它点击“com_home”而不是“com_content”。

1).将 Components/com_content/router.php 复制到 Components/com_home

2).打开 Components/com_home/router.php 并将“Content”的所有实例替换为“home”

3).打开 Components/com_home/home.php 并在文件顶部附近添加以下行:

JHtml::_('behavior.tabstate');
require_once JPATH_COMPONENT.'/helpers/route.php';

4).将整个组件/com_content/helpers复制到组件/com_home

完成后,网址 mysite.com/does-not-exist 应重定向到您在模板中设置的 error.php 页面。

关于php - Joomla 2.5 无 404 页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20797732/

相关文章:

PHP CLI 脚本没有超时

php - 如何进行高级sql表比较

php - CodeIgniter 和表格中的图像显示

php - Joomla 网站 View 没有 "read more"

php - 将 Joomla 2.5 升级到 3.x

joomla - 如何在 Joomla 1.7 中使用 JDatabaseQuery 编写查询?

javascript - 通过javascript传递数组

javascript - Joomla 更新后一个文件出现 ERR_CONTENT_DECODING_FAILED

joomla - j文件 :move does not cause any error while it's failing to move the file

php - 为我的站点创建 "Badges",存储用户徽章的最佳方式?使用 PHP