我的 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/