- 追加された行はこの色です。
- 削除された行はこの色です。
**[[質問箱5/81]] [#j184b39d]
#author("2018-03-11T21:44:44+09:00;2017-02-01T00:16:26+09:00","","")
**[[質問箱/5081]] [#j184b39d]
|RIGHT:70|LEFT:410|c
|~カテゴリ|その他|
|~サマリ|カウンタのyesterday数値|
|~バージョン|1.4.7|
|~投稿者|[[Kats]]|
|~状態|質問|
|~状態|完了|
|~投稿日|&new{2011-12-28 (水) 11:26:29};|
***質問 [#u19f8526]
【環境】~
レンタルサーバ(stepserver.jp)で利用~
OS:FreeBSD 8.0-RELEASE-p2 i386~
WebServer:不明(おそらくApache)~
PHP:5.3.2~
【事象】~
メニューバーに記述したカウンタのyesterdayの数値が、前日に確認したtodayの数値より少なく、かつ0ではない数値になる。~
たとえば12/20の23:50にtodayが50だとして、12/21の8:00に見るとyesterdayが3になっていたりする。
【前提・経緯】~
-1年以上前から運用し続けているが、数日前までこのような事象は発生しておらず、数値は正確であった。
-既知の「yesterdayカウンタがゼロになる」問題の修正(counter.inc.phpのget_dateの"UTIME"の記述を削除する)はすでに適用している。
-数日前に、PHPのflock関数がエラーを返すためにサイト表示がすべてエラーになる現象が発生し、レンタルサーバ業者に問い合わせた。その結果、業者が対応(サーバ設定の変更)を行い、その問題は解決した。解決するまでの間、flock関数の「or die」を削除することで一時的に回避する措置を行なっていた(約1日間)。
-上記の対応後、今回のyesterdayカウンタ値の問題が起き始めた。再度業者に問い合わせたが、時刻関連の設定などは変更していないので、サーバ環境面の原因は思い当たらないとの回答だった。
【推論】
flock関数の不具合の対応のために一時的に回避措置を行ったが、それによってどこかのデータが不整合を起こし、その影響が出ている?
何か思い当たることやわかること、対応方法のヒントなどありましたらお教えください。
***回答 [#b0724eb0]
- 前提に書いてありますが、counter問題の関連を。[[dev:BugTrack2/141]] -- &new{2011-12-28 (水) 21:36:22};
- (追記)自分でcounter.inc.phpを読んでみましたが、日付を超えて最初のアクセスのときにカウントを昨日分に移動させて本日分を1にする処理をしていますよね。たぶんこれが1日のうちに2回起きている(数分~数時間あけて)ように見えます。 -- [[Kats]] &new{2011-12-28 (水) 22:00:38};
- (追記2)さらに気づいたことは、日をまたいで最初にページを更新するとき、内容が反映されなかったり、バックアップに履歴が残ってなかったり、あるいは編集競合が起きたり(その際に表示される内容は壊れている)という現象も併せて起きるようになっています。このことから、ファイル更新日時の管理の部分で何か問題があるのかも知れません。 -- [[Kats]] &new{2011-12-30 (金) 18:00:15};
#comment