使用Joomla时,从包含静态文件的文件夹中提供404页面

时间:2013-05-09 13:14:52

标签: apache joomla http-status-code-404

我有一个在Apache和Ubuntu 12.04上运行的Joomla站点。我想显示404错误发生时要显示的自定义404页面。我已对模板目录中的error.php文件进行了必要的更改,以将其重定向到' / 404'我有一个index.html文件的目录,里面有很多图像,css和java脚本。

现在,当访问一个不存在的页面时,Joomla将我重定向到root / 404,但是我从appache中收到403 Forbidden错误。 404目录位于' htdocs'内。 Joomla安装目录。

其他信息: 1.我不想将我的404页面转换成Joomla模板或文章。 2.我在亚马逊网络服务上使用Bitnami的Joomla AMI

2 个答案:

答案 0 :(得分:0)

如果重定向到404页面,则会破坏错误机制。客户端将永远不会获得404状态,但成功重定向到错误页面时会有200个。

相反,您应该将模板的error.php修改为

  1. 发送404 Not Found标题
  2. 使用readfile()
  3. 直接发送错误页面

    您可能需要调整错误页面中的资产路径。

答案 1 :(得分:0)

这是完全错误的,使用静态页面并不意味着你必须克服Joomla的路由。 您应该覆盖错误页面视图或使用自定义错误页面。 看看Joomla的文档。http://docs.joomla.org/Custom_error_pages Nibra完全正确地打破了这个机制,但仍然使用readfile()似乎是一种过度杀伤。