bugfix> firefox > 投稿

のリソースを使用するWebサイトを作成しましたcdnjs。このサイトは数か月間公開されていますが、このCDNと FireFox のリソースに散発的な問題があります 。

  • 各スクリプト/スタイルCDNリソースのコンソールのエラーは次のとおりです。

    None of the "sha256" hashes in the integrity attribute match the content of the subresource.

  • 各リソースのネットワークタブのエラーメッセージは次のとおりです。

    The connection used to fetch this resource was not secure

私が問題を抱えたリソースには、これらの要素が含まれています(Webページに表示されるとおり)。

<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap3-dialog/1.35.4/css/bootstrap-dialog.min.css" integrity="sha256-wstTM1F5dOf7cgnlRHIW3bmoRAAGh6jL7tMIvqTuFZE=" crossorigin="anonymous" />
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datetimepicker/4.17.47/css/bootstrap-datetimepicker.min.css" integrity="sha256-yMjaV542P+q1RnH6XByCPDfUFhmOafWbeLPmqKh11zo=" crossorigin="anonymous" />
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/jqtree/1.4.4/jqtree.min.css" integrity="sha256-ymsp1QFcwiJbIgAoSOkMtqe4GFczZH1KjXLq6y5f+QY=" crossorigin="anonymous" />
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" integrity="sha384-wvfXpqpZZVQGK6TAh5PVlGOfQNHSoD2xbE+QkPxCAFlNEevoEH3Sl0sibVcOQVnN" crossorigin="anonymous" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap3-dialog/1.35.4/js/bootstrap-dialog.min.js" integrity="sha256-IpgnbT7iaNM6j9WjtXKI8VMJ272WM9VvFYkZdu1umOA=" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.15.2/moment-with-locales.min.js" integrity="sha256-K+AZsAFjiBd4piqBmFzaxDsiQiHfREubm1ExNGW1JIA=" crossorigin="anonymous"></script>

再現する手順

上記のURLのいずれかで問題を再現し、FireFoxブラウザーのURLに直接配置できます。リソースはブラウザウィンドウに読み込まれますが、 CTRL+F5 を押した後少なくとも1回(最大5回まで)エラーが表示されます。私たちはオランダにいますが、複数のPCからこれを複製することができますので、おそらくタイミングの問題または同様の何か(私の専門知識を超えています)?

これは、次のように使用している他のCDNの他のリソースでは発生しません。

<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
<script src="https://code.jquery.com/jquery-3.3.1.min.js" integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8=" crossorigin="anonymous"></script>

私の環境:
  • 最新のパッチが適用されたWindows 10 Pro 64ビット
  • FireFox 60.0.1(64ビット)
私の質問

これは特定の問題ですか?cdnjs そして彼らはこれを解決する必要がありますか、これは FireFox の問題ですまたは、これはリソースのリクエスト方法に関する問題ですか?


サイドノートとして、 Google Chrome でソフトウェアを定期的にテストしています 、 MS Internet Explorer 11MS Edge 、および Opera これらのブラウザ(またはその他の問題)でこの問題を経験したことはありません。

私はすでに持っています投稿を作成しました Mozillaのフォーラムで公開されましたが、これはSOに投稿するかGitHubにバグを送信することを推奨する範囲外であるという回答でした。私は後者がFireFoxのバグであると(まだ)確信していません。私も提出しましたcdnjsのgithubリポジトリの問題。

回答 1 件
  • TL;DR:Firefox 45.6.0を使用したLinux(RHEL 7.3)での同様の問題は、getfirefox.comから60.0.2をダウンロードすることで解決しました。

    @Igorの問題をこれで解決できるとは思わないが、非常に似た問題があり、Firefoxのアップグレードで解決した。おそらくこれは他の人を助けるでしょう。

    私の場合、私は同じを見ていました

    The connection used to fetch this resource was not secure

    Cloudflareだけでなく、他のいくつかのサイトのウェブコンソールの[ネットワーク]タブのメッセージ:

    https://cdnjs.cloudflare.com/

    https://ajax.googleapis.com/

    https://www.googletagmanager.com/

    https://www.google.com/

    https://www.youtube.com/

    https://www.mozilla.org/(!)

    ただし、クロムは影響を受けませんでした(オオヤマネコとカール)。

    失敗に関するエラーメッセージが表示されたら、[設定]->[  詳細設定-> 証明書-> 証明書を表示すると、www.google.comを含む[サーバー]タブで、期限切れの証明書(2014年以降)のすべてをすぐに疑いました。ただし、それらの削除は失敗しました。問題のあるサイトを新しいタブで再テストした直後に戻ってきました。

    Mozillaヘルプページの提案もすべて失敗しました:プロキシなし、ウイルス対策なし、セーフモード、プロファイルの更新、真新しいプロファイルへの切り替え(2014年の偽の証明書も取得されたため、明らかにハードコーディングされています)、ハードウェアアクセラレーションを無効化、無効化DNSプリフェッチ、および他のいくつかの about:config  ハッキング。 yumを介した既存のFirefoxバージョンの再インストールも失敗しました。すべてのsqliteファイルと storage/default の下にある関連するサイトのほとんどを手動で削除した場合も同様です。  (すべて $HOME/.mozilla/firefox/<profile> 内 )。 Mozilla自身の certutil でさえ  新しく作られた cert8.db の読み取りに失敗しました  新しい、きれいなプロファイル:

    $ certutil -L
    certutil: function failed: SEC_ERROR_LEGACY_DATABASE: The certificate/key database is in an old, unsupported format.
    
    

    45.xの[詳細設定]ページの[インポート]オプションを使用してFirefoxのルート証明書をリロードしようとしましたが、MozillaのMercurialリポジトリで見つかったプレーンテキストバージョンは、Firefoxのインポートボタンで認識されなかったようです。 (または、フィードバックがなかったかもしれません。しかし、[サーバー]タブの期限切れのものは消えませんでした。)

    私はすべてに言及しますしなかった これらのアクションのいくつかは同様の問題を報告した他の人を助け、またすべての可能性(および同僚とのいくつかの介入議論)を駆け抜けたので巨大 時間の長さ。

    最終的に、次の方法で最新のFirefoxバイナリを取得します

    https://support.mozilla.org/en-US/kb/install-firefox-linux

    http://www.getfirefox.com/

    また、ローカルディレクトリでtarballを展開すると正常に機能し、完了と検証に2分すべてかかりました。古いプロファイルと新しいプロファイルの両方が正常に機能します。また、[サーバー]タブには、期限切れかどうかに関係なく、すべての証明書が完全に空になっています。私の場合、それが問題であると確信しており、偽の証明書を削除できないことは45.xのバグでした。

あなたの答え