【问题标题】:Offline web application with rewritten URL's具有重写 URL 的离线 Web 应用程序
【发布时间】:2015-08-01 16:13:23
【问题描述】:

使用应用程序缓存,我可以轻松地使我的 Web 应用程序离线可用,并且它运行良好。我遇到的问题是我最近开始使用.htaccess 文件来重写来自

http://www.example.com/?/page

http://www.example.com/page

原则上加载“主页”后,一切仍然有效(因为所有页面都是通过 Ajax 加载的),但本地书签等不起作用。有没有办法用一个简单的服务工作者添加这个功能,同时仍然依赖应用程序缓存来完成其余的离线功能(因此允许 Firefox 和 Safari 依赖应用程序缓存,而 Chrome 和 Opera 可以完美地离线工作)。

【问题讨论】:

  • 对于投反对票的人,请详细说明你为什么反对这个问题?

标签: .htaccess application-cache service-worker


【解决方案1】:

支持服务工作人员*的浏览器使用服务工作人员的存在作为触发器来禁用服务工作人员范围内页面的应用缓存功能。见Is Service Worker intended to replace or coexist with Appcache?

我了解如何使用 service worker 进行诸如重写 URL 之类的事情是独立于离线用例的,因此不应该干扰 App Cache,但是没有可以用来说“嘿,这是一项服务”的标志与 App Cache 配合得很好的 worker,所以让我两者都用。”

* 这适用于谷歌浏览器。由于其他浏览器添加了对 Service Worker 的支持,它们可能对 App Cache 有不同的政策。

【讨论】:

  • 啊,这确实解释了我在自己的测试中看到的很多内容。很遗憾听到它们无法同时运行(直到 appcache 完全被弃用),尽管我同意应用程序缓存是迄今为止较差的解决方案。
猜你喜欢
  • 2013-08-08
  • 2015-05-02
  • 2012-12-24
  • 1970-01-01
  • 1970-01-01
  • 2011-03-05
  • 2011-02-20
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多