Zope とプロダクト
Zopeやプロダクトに関する話しはここに書きましょう。なお当ボードは Zope.org とは一切関係ありません。
↪ 新規投稿する
73 kiyo #18390ca 2004/11/03 15:14 prob:0.0%
>>72 本当はロックすべきなのかも? 私の妄想的意見(あくまで意見なのです) そもそもロックしなければいけないのでしょうか? FSCounter.py 内の__version__ = '1.3.2' を使っていて約20万アクセスあってもエラーは出なかった。 じゃ、1.3.2 以降どう変更されたかと言うと self.REQUEST.get('HTTP_X_FORWARDED_FOR', '') をよみだした時からエラーがでているような気がします。 この HTTP_X_FORWARDED_FORに unknown 文字列を含む時がある事も解っているので、これをシフト演算すると間違いなくエラーがでると思う。 このエラーが起こった時に別の新規アクセスがあると。。。(ほんとは解りません/アチャー) # 前に投稿したのは Vine 3.1がそろそろ発売になりそうなので、Vine3.0に置いてあるZope-FSCounter-1.3.4-0vl6を修正又は削除したらって思ったのです。舌足らずで申し訳ないです。
72 owa #e8faefa 2004/11/02 00:36 prob:0.0%
>>70 FSCounter-1.4.0 でもゼロクリアされる現象が起きました。なんで? write はロックかけてるので一応信用するとして、read にいちいちロックかけるのは気が向かない。(本当はロックすべきなのかも?) ip アドレスで重複チェックかけてる場合、一日単位で ip テーブルをクリアするので、そのタイミングでカウンタ値をインスタンス (self.last_count) に持たせることにしました。昨日より小さい値の場合はカウンタを更新しないというつもり。副作用で、毎日の増加分が得られます。 ftp://owa.as.wakwak.ne.jp/pub/Vine/VineSeed/patch/FScounter.1.4.0.lastday.patch 既存のサーバにインストールした場合不具合がでそうな気がするので、まだ正式ではありません。 # そう云えば少し前に mutex で対応すれば良いと云うような記事がありました。 # http://bbs.zhost.sytes.net/47 追記: 11/03 00:51 - やはりバグありますね。トップページの today カウントがクリアされません;;
71 owa #e8faefa 2004/10/30 21:26 prob:0.0%
>>70 Zope-FSCounter-1.3.4-0vl6がちょっと変 だいぶ変ですね。手を入れたコードが汚い;; 最初の二件はおっしゃる通りで、良くないのでソース直してみましたが、途中で FSCounter-1.4.0 見たら良さそうだったので乗り換えました。(申し訳ない) ロックファイルは元々無かったものなので捨てました。しかし write 文で排他制御は必要だと思うのでパッチを追加しました。 ftp://owa.as.wakwak.ne.jp/pub/Vine/VineSeed/patch/FScounter.1.4.0.flock.patch #「unknown」の方は、後で考えます。 # FSCounter 止めようかと思ってたけど、まだ使えそうですね。ありがとうございます。
70 kiyo #18390ca 2004/10/30 16:51 prob:0.0%
久しぶりに投稿^^;; Vine 3.0 にある Zope-FSCounter-1.3.4-0vl6がちょっと変なのですが。。。 カウンター値に新しい値を入れてをPOSTしても変化がないようです。 FSCounter.py の150行目付近 ---- def __write_(self, newvalue=''): ''' write newvalue to file or increment ''' value = 0 try: - value = self.__read_() + value = self.read() lock = open(self.lockfile, 'w') ---  とすると良いようです。FSCounterを作成直後に 存在しないファイル($ZOPE_INSTANSE/var/xxx.counter)を読みに行ってエラー。で結局ファイルの作成に失敗するようです。 それと 古いZopeからimport/Exportで持って来た場合、独自に拡張された self.datafile, self.lockfileが存在しない為うまく動作しないようです。110行目付近 manage_edit付近に以下のようにしたらどうでしょう? ---- def manage_edit(self, title, cookie_yn=0, cookie_name='', padded_value='5', images_folder='misc_/FSCounter', image_type='', ignore_addrs=(), newvalue='', ip_tracking=0, REQUEST=None): """edits the object""" self.title = title + if not self.lockfile: + self.datafile = str(Globals.data_dir) + os.sep + str(self.filename) + self.lockfile = self.datafile + '.lock' --- あと HTTP_X_FORWARDED_FORですが、UserCounter等をみていると IPアドレスが 「unknown,123.456.789.012」 のようにありますので、「unknown」を削除する為 330行付近を以下のようにしてみました。 ---- def ignore_ip(self, REQUEST): ''' check if the ip should be ignored ''' ignore = 0 if self.ignore_addrs: rAdr=self.REQUEST.get('HTTP_X_FORWARDED_FOR', '') or self.REQUEST.get('REMOTE_ADDR', '') + radr_p = string.find(rAdr,',') + 1 + rAdr = rAdr[radr_p:] ----
69 owa #e8faefa 2004/10/28 19:26 prob:0.0%
apache のリリースについて、正確な情報は cvs の status にあるそうです。 http://cvs.apache.org/viewcvs.cgi/apache-1.3/STATUS http://cvs.apache.org/viewcvs.cgi/apache-1.3/STATUS?view=markup hayashi さんの記事で知りました。 1.3.34-dev: In development. 1.3.33: Tagged October 27, 2004 1.3.32: Tagged October 18, 2004. Not formally released. 1.3.31: Tagged May 7, 2004. Announced May 11, 2004. 1.3.30: Tagged April 9, 2004. Not released.
68 owa #e8faefa 2004/10/27 23:52 prob:0.0%
>>67 そういうリリースアナウンス有るべきでしょう 色々考えさせられます。リリースアナウンスのページはまだ見ることができますし。 セキュリティ問題が絡むとややこしくなる上に、公開してしまったら対処はどうするのか? *.jp の立場ではどうするの、巷で乱立 (失礼) してる *.jp 各々の実体は信頼できるの? 「エ〜〜〜ッ」ってのは僕も実感です。なんか変だとも思います。 鯖の管理者としてはもっと慎重な態度が必要でしょうけど、それはまた違う話で。
67 hoihoi-p #0eca2b3 2004/10/27 21:59 prob:0.0%
>>[Apache-Users 4724]:そもそも、1.3.32 は正式にはリリースされていません。 >>tar ball まで作成されながらリリースされなかったのには理由があるのです。 エ〜〜〜ッ。 >> http://www.apache.jp/ >> Apache 1.3.32 がリリースされました (2004/10/21) って、かいてありますよ〜〜。 あれは嘘? それなら、そういうリリースアナウンス有るべきでしょう。絶対。 それとも、apache.jp が、確認もしないでリリースアナウンス出したの? 「apache.jp と apache.or.jp は別です。」とでもいうのかな? なんか、変じゃない。 もっとも、フリーソフトだから、自己責任なんだけど。 ・・・・・。!!
66 owa #e8faefa 2004/10/27 20:19 prob:0.0%
>>65 apache-1.3.32 は正式リリースでは無いらしい。 http://mm.apache.or.jp/pipermail/apache-users/2004-October/004914.html http://d.hatena.ne.jp/kinneko/20041027#p6 準備万端だったけど、最後になんかあった? おまけに、最新 (26 日付) 見れば mod_rewrite の障害報告が載っていた。 http://nagoya.apache.org/bugzilla/show_bug.cgi?id=14518 ml 投稿前に再度チェックして置けば良かった。(恥 でも既にセキュリティ脆弱性は明らかにされてるし、 IT 関連のニュースにも 1.3.32 リリースが大きく報じられています。 http://www.itmedia.co.jp/enterprise/articles/0410/23/news005.html インストールした人多いんじゃなかろうか?
65 owa #e8faefa 2004/10/26 22:03 prob:0.0%
>>64 やっぱりバグでしょう tcpwatch を間に入れて確認してみました。 ● apache-1.3.32-0vl1 ==>GET /VirtualHostBase/http/localhost:80/VirtualHostRoot/test/query%3Fwho=hoge?who=hoge HTTP/1.1 ○ apache1.3-1.3.32-uvl1 ==>GET /VirtualHostBase/http/localhost:80/VirtualHostRoot/test/query?who=hoge HTTP/1.1 apache が直接吐いてるものと思って構わないでしょう。mod_rewrite は多機能でしかもソースは 4493 行もあるので、すぐに理解するのはちと無理です;; ml に投げるしかないかなー # また恥じをかきに行くようなものだけど...疑ヲ見テセザルハ勇ナキナリ 追記: と云うことで apache-users (jp) に投稿してみました。 http://mm.apache.or.jp/pipermail/apache-users/2004-October/004913.html
64 hoihoi-p #0eca2b3 2004/10/26 09:39 prob:0.0%
>>63: Lオプションの欠落で・・・・・は無いと思います。 失礼しました。 >> [VineSeed:09510] Re: upload: apache なんて、でてますねー。 これが原因とは思えないけど。 追伸 >>http://owa.as.wakwak.ne.jp/zope/coreblog/115 >>http://www.wedgeshape.com/wedge/gwbs/114 に続報がありました。 ほほー。 これは仕様変更? やっぱりバグでしょう。 たぶん。 パッケージ頂いていきます。 m(_ _)m