MozillaZine.jp フォーラム https://forums.mozillazine.jp/ |
|
Firefox 24esrから31esrへupdateすると、不具合が出る https://forums.mozillazine.jp/viewtopic.php?f=2&t=15288 |
ページ 1 / 1 |
作成者: | from_far_away [ 2015年2月26日(木) 09:29 ] |
記事の件名: | Firefox 24esrから31esrへupdateすると、不具合が出る |
Firefoxの設定: Firefoxを起動するとき:前回終了時のウィンドウとタブを表示する。 履歴:記憶させる。 詳細状況: 1.Firefoxを閉じる前に、ブックアークに設定されたwebサイトのホームページになっています。(ログイン済み状態) 2.Firefoxを閉じて、また再起動して、ブックアークに設定されたwebサイトのホームページになるはずですが、 ログインする必要なcookieがなくなって、認証問題がありました。でも、ブックアークをクリックすると、 cookieが出てきて、ログイン問題がありません。 3.Firefox 24esrへ更新すると、問題ないです。31esr以降のバージョンへ更新すると、この問題が起きました。 知りたいことは、31esr以降のバージョンでcookieの保存方式などが変わりましたか。 また、何かアドバイスなどがあればご指導頂ければ幸いです。 よろしくお願いします。 |
作成者: | WADA [ 2015年2月26日(木) 11:28 ] |
記事の件名: | Re: Firefox 24esrから31esrへupdateすると、不具合が出る |
cookies.sqlite も webappsstore.sqlite(localStorage) も places.sqlite も、結局は、サイトのURLをキーにして、そのキーに関するデータが入っている「表」で、places.sqlite は、その中にブックマーク用や履歴用の表を複数持っていて、組み合わせて使っているだけ。 SQLite Managerを入れて、firefox.exe -p SQLite -no-remote で別途Firefoxを立ち上げておき、Firefoxが動いている時や終了後にcookies.sqliteをコピーし、それをSQLite Managerで見ると、どのようなデータが保存されているかを簡単に見られます。 動いている途中だと、まだ一時ファイルに書いてあってsqliteファイルには書いていない時もあるから、クッキーマネージャーで見た方がいいですけど。 また、Webコンソールでクッキーのやり取りを見られますから、 そのサイトだけを開いていてログインした状態で終わらせて、最小限の動きになるようにし、 再起動した時のクッキーのやり取りを見て、Firefox esr24とFirefox 31esrの違いを探し、 SQLite Managerでのデータと照らし合わせると、実際に何が起こっているかを把握しやすいと思います。 セッションリストアーでのアクセスとブックマークからのアクセスの違いが影響していると思われますし、 サイトによってはリダイレクトをしていて、それが影響している、というような可能性はあります。 また、期限切れなのに残っていたものが、Firefox 31esrでは、バグが直ってきちんと消されるようになった、というような可能性もあります。 履歴関係では、少なくとも、ダウンロードの履歴が、他の履歴などと連動して消されるので、以前のように相当古いものも見られるわけではない、というような違いはあります。 [ちょっと追記] Firefoxでいう「セッション」は、sessionstore.jsという名前のJSONファイルに保存されています。 JSONファイルは、JavaScrptのオブジェクトのデータを、 var Obj={ ..., A: { x: 1, y:2, z:3 } , B: { ...} , ... } で初期化する形式でファイルに書いたもので、 { ... , "tabs": [ { "uri" : "http://forums.mozillazine.jp/..." , ... , ... } , { ... } , { ... } ] , ... } のような形で、タブのURLを保存していて、これは、サーバー側の、PHPのsessionIDなどでの「セッション」とは異なり、単なるURIのデータです。、 サーバー側のessionIDは、setCokieで送られてきたデータに対応し、HTTPキャッシュの中のHTTPヘッダーデータあるいはcookies.sqliteのデータ、としてFirefox内には存在します。 で、302リダイレクトがあると、sessionstore.jsに書かれるURIも変わる?、というのが、一つの疑問です。 cookies.sqliteのデータのキーのURIと、sessionstore.jsのデータのURIが異なれば、当然HTTPキャッシュやcookies.sqliteのデータなどを読みません。 [/ちょっと追記] |
作成者: | from_far_away [ 2015年2月26日(木) 14:58 ] |
記事の件名: | Re: Firefox 24esrから31esrへupdateすると、不具合が出る |
WADAさん、こんにちは。 ごアドバイスありがとうございました。 >再起動した時のクッキーのやり取りを見て、Firefox esr24とFirefox 31esrの違いを探し、 >SQLite Managerでのデータと照らし合わせると、実際に何が起こっているかを把握しやすいと思います。 上記の通りにやってみましたが、cookies.sqliteファイルのデータの違いが特にありません。 Firefox側のプライバシーの「記憶させる履歴を詳細設定する」でCookieを表示して確認しました。 毎回Firefoxを閉じて、また開く際に、ただログイン必要なcookieのみがなくなって、他のcookieは全て残っていることです。 最初はサーバ側のcookieの設定問題だと思いましたが、 Firefoxのバージョンを変わると、不具合がなくなるのでFirefox側の問題かと考えています。 |
作成者: | WADA [ 2015年2月26日(木) 16:37 ] |
記事の件名: | Re: Firefox 24esrから31esrへupdateすると、不具合が出る |
from_far_away さんが書きました: 上記の通りにやってみましたが、cookies.sqliteファイルのデータの違いが特にありません。 Firefox側のプライバシーの「記憶させる履歴を詳細設定する」でCookieを表示して確認しました。 これって、Firefoxを終了する直前の、Tabのそのページが開いてあってログインしている時の状態ですよね。 Firefoxを終了した時点の、cookies.sqliteの中身、sessionstore.jsの中身はどうなっているのでしょうか? from_far_away さんが書きました: 毎回Firefoxを閉じて、また開く際に、ただログイン必要なcookieのみがなくなって、他のcookieは全て残っていることです。 これは、再起動して、セッションリストアーが接続した後の話ですよね。 セッションリストアーが接続したときのWebコンソールのHTTPログには、どのようなクッキーのやり取りがあったのですか? セッションリストアーが接続したときには回復されなかったログイン状態が、何故、そのあとにブックマークをクリックすると、ログイン状態になるのでしょうか? この時点では、サーバーのセッションデータは消されているはずで、 セッションクッキーを送らなくて最初から始まるが、でもその時、ユーザー名などのクッキーは生きているから、ログイン状態になれる? セッションリストアーが接続した時のクッキーのやり取りやページの遷移と、 ブックマークをクリックした時のクッキーのやり取りやページの遷移の違いは何ですか? クッキーのやり取りの様子は、Firefox Esr24とFirefox esr31とで変りはないですか? サイト側が、Firefox 31だと(Austrailの後)、Web Storage(localStorage)とかを使って、クッキーのやり取りを減らしている、というようなこともあり得ます。 やるんなら、サイトのバージョンを上げて一斉にで、ブラウザーのバージョンごときで変えるとはちょっと考えにくいですけど。 |
作成者: | WADA [ 2015年2月26日(木) 18:15 ] |
記事の件名: | Re: Firefox 24esrから31esrへupdateすると、不具合が出る |
Firefox 24とFirefox 31の違いで気になることが... SQLite のバージョンはどう異なっていますか? 最新ではSQLite 3.8.8.2なのですが、Firefox 24がSQLite 3.7.11よりも前のバージョンだと、SQLite 3.7.11での仕様変更に全然対応していないので、SQLiteのDBの更新のすっぽ抜け、ロックをリリースしない、というような問題が、Firefox 31で新たに起こる可能性があります。 https://bugzilla.mozilla.org/show_bug.cgi?id=1062823 SQLite 3.7.11よりも前は、ROLLBACKで競合が起こるとSQLITE_BUSYを返していたが、 SQLite 3.7.11からは、ROLLBACKで競合が起こると、ROLLBACK以外にはSQLITE_ABORTを返し、ROLLBACK同士の競合だとSQLITE_ABORT_ROLLBACKを返す、 というような仕様変更なのですが、 SQLITE_ABORTとSQLITE_ABORT_ROLLBACKのチェックは一切していないので、リトライはせず、 一般的なエラーのNS_ERROR_FAILURE が呼び出し側に返されるだけになるので、呼び出し側もリトライしないはずで、 更新のすっぽ抜け、あるいはROLBACKのすっぽ抜けが起こり得る、というものです。 あるサイトのクッキーの一つがいつも更新されない、ということは、ちょっと考えられないですが、 終了時だと、最終的なcookies.sqliteの更新とFirefoxの終了処理が必ずバッティングする、というようなことはあり得ます。 [追記] SQLite のバージョンを知る方法。 SQLite Managerを入れ、適当にConnect Dataabase(sqlite fileのオープン、"Execute SQL" タブで、 SELECT sqlite_version(*) "Run SQL"ボタンをクリック。 [/追記] |
作成者: | WADA [ 2015年2月27日(金) 18:51 ] |
記事の件名: | Re: Firefox 24esrから31esrへupdateすると、不具合が出る |
NightlyならZIP Buildがあるので、Firefox esr 24のリリース日の近くのtrunk nightlyで確認してみました。 Firefox esr 24.0 Mozilla/5.0 (Windows NT 5.1; rv:24.0) Gecko/20130911 Firefox/24.0 SELECT sqlite_version(*) 3.7.17 Firefox esr 24.8.0esrpre Mozilla/5.0 (Windows NT 5.1; rv:24.0) Gecko/20140924 Firefox/24.0 SELECT sqlite_version(*) 3.7.17 既に、SQLite 3.7.17 になっているので、SQLite 3.7.11でのROLLBACK絡みの仕様変更によるもの、ということではなさそうです。 SQLite 3.7.17とSQLite 3.8の違いが影響している、ということはあるかもしれないですけど。 |
作成者: | from_far_away [ 2015年3月12日(木) 14:24 ] |
記事の件名: | Re: Firefox 24esrから31esrへupdateすると、不具合が出る |
ありがとうございました。 色々調べましたが、なんとかほしい結果が出てこないですね。。。 |
作成者: | WADA [ 2015年3月12日(木) 15:20 ] |
記事の件名: | Re: Firefox 24esrから31esrへupdateすると、不具合が出る |
from_far_away さんが書きました: 色々調べましたが、なんとかほしい結果が出てこないですね。。。 最初に以下のように言っているから、多分、再起動したあとだと無くて、ブックマークをクリックした後はでてくるクッキーの名前と中身は、中身は意味不明かもしれないが、わかっている。、 from_far_away さんが書きました: ログインする必要なcookieがなくなって、認証問題がありました。 でも、ブックアークをクリックすると、cookieが出てきて、ログイン問題がありません。 毎回Firefoxを閉じて、また開く際に、ただログイン必要なcookieのみがなくなって、他のcookieは全て残っていることです。 ならば、Webコンソールを見ればクッキーのやり取りは見えるのだし、 クッキーマネージャーでの表示もできるのだし、 終了した時点のクッキーデータを見たければ、SQLite Managerでcookies.sqliteを見れば、見ることができる。 そして、大体はjsファイルが分散していて、下手するとJSで<script src>を作り出していることも多くて探すだけでも大変だが、HTMLで呼んでいるスクリプトを見ることも、容易ではないにしろ、全く不可能というわけではない。 「ほしい結果」が何なのかは知らないが、自分で何かを調べた結果なら、何をどう調べてみてどこがどうわからなかった、くらいは書かなきゃ、誰にもわからないし、問題の解決方法、だとしたら、何がどうなっている、ということについて説明がなければ、誰も答えようがない。 「色々調べました」は、どのようなことを調べてみたことを指すのでしょうか? |
作成者: | WADA [ 2015年3月12日(木) 15:28 ] |
記事の件名: | Re: Firefox 24esrから31esrへupdateすると、不具合が出る |
接続したまま終了・再起動すると、ログインに必要なクッキーが消えているのに、ブックアークをクリックするとログインできてしまう、ということについて、 接続したまま終了・再起動するとログイン状態になってくれない、という部分だけを見るのではなく、 なぜ、ログインに必要なクッキーが消えているにもかかわらず、ブックマークをクリックするとログインできてしまうのか、 を調べてみると、接続したまま終了・再起動するとログイン状態になってくれない時のことが、少し見えてくるかもしれません。 |
作成者: | WADA [ 2015年3月12日(木) 15:42 ] |
記事の件名: | Re: Firefox 24esrから31esrへupdateすると、不具合が出る |
from_far_away さんが書きました: 3.Firefox 24esrへ更新すると、問題ないです。31esr以降のバージョンへ更新すると、この問題が起きました。 他のトピックで、Fx36にしたら、Ctrl+Tで新規タブを開くと、「アドレスの書式が正しくありません」とでてきて、Malformed URIと判定されてしまう、というのがあったのですが、この方の場合は、Firefoxの再導入で問題が消えたようです。 Firefox 24の時点のプログラムライブラリーを、Firefox24とかにリネームしておき、Fx 31esrやFx 36を新規にインストールしてプログラムライブラリーだけでもクリーンインストールすると、どうなりますか? pluginsの場所が途中で変わったりしているので、古いバージョンのプラグインが悪さをする、というような可能性はあります。 |
ページ 1 / 1 | All times are UTC + 9 hours |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |