在某些机器上更新Firefox插件失败

在某些机器上更新Firefox插件失败,firefox,firefox-addon,rdf,updates,Firefox,Firefox Addon,Rdf,Updates,我们有一个Firefox插件,我们将自己托管在自己的安全(https)服务器上。我们的插件总是第一次安装到当前版本的Firefox中,没有问题。但是,当发布新版本的插件并调用Firefox插件管理器的更新机制时,有些更新会成功,有些则会失败 到目前为止,我们还无法确定随机故障的原因。我们希望有人能够看到我们的信息,能够看到我们遗漏的东西,并帮助我们解决这个问题 这是我们的RDF文件… 2.0.27 {ec8030f7-c20a-464f-9b0e-13a3a9e97384} 10 23.*

我们有一个Firefox插件,我们将自己托管在自己的安全(https)服务器上。我们的插件总是第一次安装到当前版本的Firefox中,没有问题。但是,当发布新版本的插件并调用Firefox插件管理器的更新机制时,有些更新会成功,有些则会失败

到目前为止,我们还无法确定随机故障的原因。我们希望有人能够看到我们的信息,能够看到我们遗漏的东西,并帮助我们解决这个问题

这是我们的RDF文件…


  • 2.0.27 {ec8030f7-c20a-464f-9b0e-13a3a9e97384} 10 23.* https://livehiveapp.com/product/extensions/ff/livehive.xpi
  • 这是一台更新失败的机器的日志输出…

    001日志加载项。更新:正在请求https://versioncheck.addons.mozilla.org/update/VersionCheck.php?reqVersion=2&id={f13b157f-b174-47e7-a34d-4815ddfdfeb8}&version=0.9.89&maxAppVersion=14.0a1&status=userEnabled&appID={ec8030f7-c20a-464f-9b0e-13a3a9e97384}&appVersion=23.0.1&appOS=WINNT&appABI=x86 msvc&locale=en US¤tAppVersion=23.0.1&updateType=97&compatMode=normal
    002日志加载项。更新:正在请求https://versioncheck.addons.mozilla.org/update/VersionCheck.php?reqVersion=2&id=jid0-GXjLLfbCoAx0LcltEdFrEkQdQPI@jetpack&version=2.4.0.1&maxAppVersion=20.*&status=userEnabled&appID={ec8030f7-c20a-464f-9b0e-13a3a9e97384}&appVersion=23.0.1&appOS=WINNT&appABI=x86 msvc&locale=en US¤tAppVersion=23.0.1&updateType=97&compatMode=normal
    003日志加载项。更新:正在请求https://livehiveapp.com/product/extensions/ff/update_ff.rdf
    004 LOG addons.updates:找到jid1的更新条目-aWPVzAyllHmjZg@jetpack版本2.0.27
    005 LOG addons.updates:找到{F13B15F-b174-47e7-a34d-4815ddfdfeb8}版本0.9.89的更新条目
    006 LOG addons.updates:找到jid0的更新条目-GXjLLfbCoAx0LcltEdFrEkQdQPI@jetpack版本2.4.0.1
    007 LOG addons.xpi:已开始下载https://livehiveapp.com/product/extensions/ff/livehive.xpi 到文件C:\Users\dstod\AppData\Local\Temp\tmp-i1t.xpi
    008 LOG addons.xpi:下载https://livehiveapp.com/product/extensions/ff/livehive.xpi 完整的。
    009 LOG addons.repository:正在请求https://services.addons.mozilla.org/en-US/firefox/api/1.5/search/guid:jid1-aWPVzAyllHmjZg%40jetpack?src=firefox&appOS=WINNT&appVersion=23.0.1
    010 LOG addons.xpi:开始安装https://livehiveapp.com/product/extensions/ff/livehive.xpi
    011 LOG addons.xpi:Addon jid1-aWPVzAyllHmjZg@jetpack将作为打包的xpi安装
    012 LOG addons.xpi:在jid1上调用引导方法shutdown-aWPVzAyllHmjZg@jetpack版本2.0.23
    013无法读取chrome清单'file:///C:/Program%20Files%20(x86)/Mozilla%20Firefox/chrome.manifest'。
    014无法读取chrome清单'file:///C:/Program%20Files%20(x86)/Mozilla%20Firefox/browser/extensions/%7B972ce4c6-7e08-4474-a285-3208198ce6fd%7D/chrome.manifest'。
    015 LOG addons.xpi:在jid1上调用引导方法卸载-aWPVzAyllHmjZg@jetpack版本2.0.23
    016 LOG addons.xpi:从C:\Users\dstod\AppData\Roaming\Mozilla\Firefox\Profiles\f1hj0mzi.default\extensions\jid1加载引导作用域-aWPVzAyllHmjZg@jetpack.xpi
    017 LOG addons.xpi:在jid1上调用引导方法安装-aWPVzAyllHmjZg@jetpack版本2.0.23
    018 LOG addons.xpi:安装https://livehiveapp.com/product/extensions/ff/livehive.xpi 完整的。
    019 LOG addons.xpi:在jid1上调用引导方法启动-aWPVzAyllHmjZg@jetpack版本2.0.23
    
    在本例中,我们从版本2.0.23升级到版本2.0.27。请注意日志中正确的RDF文件的位置(第3行),正确标识新版本(第4行),并成功下载新的.XPI文件(第8行)。然后关闭旧版本2.0.23(第12行),并卸载(第15行)

    这里似乎出了问题:不是安装已下载的版本2.0.27,而是重新启动版本2.0.23(第17-19行),从而阻碍了更新。没有记录任何错误,也没有关于为什么会发生这种奇怪行为的线索


    有人能解释一下这里可能发生的情况吗?

    由于没有其他错误,浏览器的缓存中可能仍有您的XPI,因此不会下载新文件


    尝试使用
    无缓存
    头或更好的缓存验证器和/或为每个XPI版本使用唯一的URI。

    由于没有其他错误,我打赌浏览器仍有缓存。尝试使用无缓存头或更好的缓存验证器,或者为每个XPI版本使用唯一的URI。您的建议就是答案!我们更改了XPI的URL以包含版本号,使其唯一,问题消失了。谢谢你的建议。我怎样才能对评论中的答案给予信任?将评论转化为答案。为了清楚起见,我们使用这些信息为每个版本的附加组件创建唯一的URL来解决问题。这需要对我们的流程进行两个相对简单的更改(1)创建一个新目录,将新XPI放入其中,(2)在RDF文件中进行一行更改。特别是对于我们的最新版本2.0.27,URL更改为。问题立即从所有以前出现故障的机器中消失。