カテゴリ | |
サマリ | is_freeze(): flock() failed のエラー |
バージョン | 1.11.7 |
投稿者 | nyanko |
状態 | 却下 |
投稿日 | |
FreeBSD→CentOSにwikiのデータのみ移行しました。
NFSにてFreeBSDではデータをmountしてますが、wikiページにアクセスすると「is_freeze(): flock() failed」と出るようになりました。mountは正常に動作しております。ユーザID、グループID、ID番号は勿論、揃えております。どうすれば、元のwikiページが正常に表示できるようになりますでしょうか。
- dev:BugTrack2/300 と似たような状況ですかね?(詳しくは見てないけど)
短絡的な回避手段は、PHP関数:flock を使わないようにする。 --
- 回答ありがとうございました。flock関数自体を使わないようにするためwikiデータを変更しなければいけないんですね?現状だと難しいためNFSを利用しない方法を考えます。原因が分かって助かりました。本当にありがとうございました。 -- nyanko
- 申し訳ございません。wikiサイトがいくつかあり、その内の2つは正常にNFSでも利用できます。(flock関数も利用されてる)
違いは正常利用が出来ているwikiは専用ユーザとグループで、動かないwikiはapacheユーザ、グループでした。ユーザ変更しても同じです。 -- nyanko
- flock関数を使う使わないはシステム・プログラム側の都合や問題であって、wikiデータは触らなくてもいいような・・・(緊急で表示したいだけならlib/func.php をいじらないとダメそうですけど)
ただ、根本的な問題を解決したいのなら利用環境の情報がもう少しあったほうがいいですよ、OSやPukiWiki、PHPなど(上の1.11.7 がどれのバージョンを指しているのかも)。特定バージョンのバグや相性問題など、情報がないと判断できない場合のほうが多いので。
他に、正常に動いている他のwikiサイトがどのwikiエンジンを使っているのかという情報があれば、もしかしたら解決の糸口になるかもしれません。 --
- is_freeze():...はPukiWikiが出力しているエラーですが、phpがエラーを出力している可能性が高いです。まずはphpが出力しているエラーを確認してみるのが良いでしょう。c.f. Q&A/インストール#x80b2883 -- ぃぉぃぉ
- phpのエラーを見てみました。 lib/func.phpの663行目でエラーが出ており、内容を確認すると「return get_matcher_regex(& $pages, $start, $end, $pos);」の行みたいです。なお、NFSでデータのみ移行後にエラーが出るwikiのバージョンは「PukiWiki Plus! 1.4.7plus-u2-eucjp.(データ移行前の状態に戻し画面のTOPページの一番下で確認)」で、正常に利用できるwikiは「"PukiWiki" 1.4.2」でした。「1.11.7」ではありませんでした。すみません。OSはデータ移行前FreeBSD 5.2.1 NFSサーバにもなっているデータ移行後CentOS release 5.2 (Final) PHPはPHP 4.3.11 以上です。問題解決のために助言をいただければと思います。 -- nyanko
- 今言われた状況を整理して調べたところ、pukiwikiではなくPukiWiki Plus! の問題のため質問を取り下げます。ありがとうございました。 -- nyanko