我有一台(大部分)不受管理的计算机卡在某个不容易到达的地方,它只有一个目的:在连接到所述计算机的视频卡的大屏幕上显示特定的网页。这是通过在全屏模式下在裸 X11 上运行 Firefox 来实现的。
现在,页面本身有一个脚本,每 X 分钟重新加载一次;但是,如果网络/Web 服务器中断(这种情况经常发生且目前无法避免),浏览器会刷新页面并卡在“找不到地址”页面上。一旦它到达那里,只有一种方法可以恢复:手动重新加载网页。
问题:是否可以修改 Firefox 的设置,使其每 X 分钟自动尝试重新加载目标页面,同时卡在“找不到地址”错误页面?谢谢你。
您可以采取的一种方法是将 Firefox 指向框架集而不是直接指向您的页面,然后在重新加载框架的父级中添加一些 javascript。由于父页面不会重新加载,因此在连接丢失时不会卡住并继续尝试重新加载目标页面。
另一种可能性是为 Firefox 编写一个插件。ErrorZilla扩展替换了标准错误页面,它位于MPL 下,因此您可以查看代码并更改页面以执行您想要的操作。
当您说“以全屏模式在裸 X11 上运行 Firefox”时,我立即假设您在此系统上本地运行 *nix。
在这种假设下,还有另一个选择:在本地安装 Apache 并简单地将其配置为将“localhost”的网络服务器代理到您需要的单个页面。
当网络不通或出现其他类型的错误时,您可以简单地更改此 Apache 的本地 404、500 等错误页面。
这些“错误页面”都可以有不同的重试周期。取决于错误的类型。
非常简单,不需要额外的编程/插件。所有 OOTB 软件。
除了 robertc 建议的框架集选项外,您还可以通过客户端 javascript 发出的 HTTP 请求使页面大部分或部分刷新。
这意味着页面永远不会显示错误(或空白,而如果页面不可访问,浏览器会等待超时发生),并且如果机器运行缓慢,这可以减少页面更新期间的屏幕闪烁(您可以记录最后一个结果,如果信息没有改变,则不更新任何内容),尽管实现起来比更简单的框架集选项要多一些工作。
当然,如果您希望显示错误页面(而不是“最后一次正确”的信息,此时可能已过时),您可以显示自己的消息,其样式与通常显示的主题相匹配,或者也许只是在通常的显示中添加一个警告,大意是显示的信息已经有一段时间没有更新了。
扩展 TabMixPlus 将自动页面刷新计时器添加到 rclick 菜单。只需 rclick 网页的空白部分,然后在“重新加载每个”下选择一个设置。如果遇到错误,我实际上不确定它会做什么,但如果它有效,这是一个简单的解决方案。