.htaccess跨浏览器
我试图加载一个自定义错误文档的404错误使用Linux服务器上的.htaccess文件,页面获取当前页面URL然后重定向到另一个站点(这是从数据库检索)基于在从URL检索到的id上。.htaccess跨浏览器
的当前错误的文件都存储在这里:
/上-error_docs‖/ - 我没有权限上传比已经在那里
/HTTPDocs/301redir.php 是HTML文件的其他任何.htaccess文件所在的网站根目录。
我已经使用以下方式加载301redir.php页面作为错误文档,它在FF中工作,但没有其他浏览器。使用的.htaccess正在改变这个我唯一真正的选择
的ErrorDocument 404 /310redir.php
,有没有办法来解决这个问题,并使其在所有浏览器的工作?
也许你的文件太小,看到从apache docs以下摘录:
微软的Internet Explorer(MSIE) 将默认忽略 服务器生成的错误消息时 他们是“太小”并用它自己的“友好”错误消息替代 。该 大小阈值取决于 错误类型的不同而不同,但一般来说,如果你 让你的错误文档大于 512字节,然后MSIE将显示 服务器生成的错误,而不是 掩盖它。有关详细信息,请参阅Microsoft知识库文章 文章Q294807中提供的 。
这应该做工精细,尝试把完整的URL http://www.yourdomain.com/301redir.php
我也注意到youu说310redir.php就是你们的榜样,但301redir.php在你的描述(注意:310和301)。
另外不要忘记添加header("HTTP/1.1 404 Not Found");
如果你正在做一个404
你确定它工作在Firefox?错误处理发生在服务器端,只有输出被发送回客户端。所以它可以适用于任何客户或任何客户。 – Gumbo 2010-06-15 12:24:20
你说“没有其他浏览器”,你有什么其他浏览器尝试过吗?您是否从日志中验证其他浏览器实际上是否生成了正确的错误(并且没有成功)? – ircmaxell 2010-06-15 12:59:36