2005/02/19
Web日記帳 "さくら" Rev-2.0.0 BETA:70 不具合相談
なんやら各地でちょっとした不具合がいろいろと出ているようで。
新規でエントリーしましたんでつっこみでいろいろとお願いします。
× 真っ白になる
○ 書き込み時のバックアップファイルが書き込めない
$log_backupfileで指定したファイルは正常に書き込まれたら削除されるので、ファイルが書き込まれるディレクトリはパーミッション 777 である事が必要。
△ RSS ファイルに固定の URL が書き込まれている
該当個所を確認したが、固定で書き込むような記述は無し。
他の人どうなってます?
rdfdata.rdf が雛形になってます。
そちらを修正してください。
中途半端に雛形にするなら固定の方がいい?
△ 新規書き込み→既存の日記と同日付で追加
非常手段でありまともにチェックしてませんというかそもそも EUC と SJIS が混じってるから不具合出るかも。
たぶん追記の時に文字コードチェックしてないとか変に変換してるとかそんな感じの予感。
○ RSS の修正って?
& を & に変換するようにしました。
でないと sage などでパースエラーが出ます。
△ 既存記事に新規書き込みで追記すると文字化け
残念ながら再現できなかった。
ファイルに書き込むときは新規と既存の区別はないので同じサブルーチンを使用している。
ちょいと変なところで文字コード変換が入ってます。
それを除去すると SJIS になります。
で、このままだとらちがあかないので全部書き換えてみようかなと考えている。
そこでアンケート。
  1. ログそのものは SJIS と EUC どっちがいいですか?
  2. ログオン方法は現在前入力と後入力になっていますが、これを前入力のクッキーによるセッション保持に変更して良いですか?


  • 山銀:>RSS ファイルに固定の URL
    見てみましたが、rdfdata.rdf の中の記載文っぽい感じですねぇ。
    うちの日記は何とか動作しているっぽいんですが・・・以前と何か違う感じもします。
    で、ファイルを再アップしたところ・・・XML ページを表示できませんエラーが出ました。
  • 山銀:上に投稿した以前と何か違う感じですが・・・
    以前は、RSS のアイコンをクリックすると・・・ファイルをダウンロードしたんですが・・・今はソースが表示されます。
    まぁ、私が RSS に関して把握出来ていませんので何とも言えませんです。
  • 山銀:XML ページを表示できませんエラーですが・・・時間が解決するみたいです。お騒がせしました。
    で、デフォルトのままの rdfdata.rdf を入れると同様の症状になる事を確認しましたです。
  • G兄:あ、そうか、rdfdata.rdf が雛形になってるの忘れてました。(汗)
    ダウンロードから表示になったのは、apache をそういう風に変更したからです。
    本来は表示する設定にならないとダメだったような希ガス。
  • 蝦兄:うちも「真っ白」「rdfの中身がよそのURLで固定」が再現してます.
    RSSの全容を把握できてないので,どこをどうなおせばなおるのかはまだ未調査です.
    ちなみに乗っ取られるURLはG兄日記(笑)
  • 蝦兄:あと,旧記事への新規書き込みでの追記の件ですが.
    新バージョンになった状態で新規書き込みした日記にさらに新規で追記しても盛大に文字化けするようです(汗)
    それを編集モードで削ろうとすると,旧記事だけは文字化けせず表示されて新記事だけ化けた状態で編集モードの表示が出てくるみたいです.

    と言うことは,最初の新規記事とあとから追記される記事とで文字コード違ってるって事なのかな?
  • 蝦兄:rdfdata.rdf 書き換えたら今度はアイコンつっついでもなにも表示されなくなりました(汗)
  • G兄:>蝦
    ん?今sageに放り込んでみたけど正常に受信できとるぞ?
  • G兄:>文字化け
    ウチでは再現しねー・・・。orz
  • 蝦兄:rdfはどうも時間が解決してくれたようです( ̄▽ ̄;)
    文字化けの方は直らないですねぇ・・・もしかしてデフォでEUC使ってる人とそうでない人とで違いがあるのかな?
  • 蝦兄:状況としてはこんな感じです>文字化け
    ・全くの新規→正常
    ・上記記事に新規で追記→その日の記事が全部化ける
     ※その日以前のログは正常のまま
    ・編集モードで追記部分を削除更新→既存分は正常に戻る
     ※このときの編集モード上では既存分が正常,追記分は化け
    ・編集モードで追記分を残して更新→既存分含めて文字化け
     ※どうも追記分が残ってるか否かで結果が分かれる感じ
    ・化けた状態でエンコードをEUCに→化け記事は正常,以外は化け

    と言うことでやはり文字コードがどこかで悪さしてる感じがします.
    感じからすると新規→S-JIS,追記→EUCで吐かれてるのかな・・・そんな感じです.
    なぜ新規追記で既存記事まで一緒にEUCになるのか,編集モードで追記記事の有無で結果が変わるのかがちょっと謎のままです..
  • G兄:log ディレクトリにファイルが出来るので、その文字化けしたログをもらえますか?
    あと jcode.pl は最新ですよね?
    一度 $wd の処理周りを一新しないとだめやねこれは。
    for MySQL バージョンではここらへん綺麗にしたんですが。(ぉ
  • 山銀:>ダウンロードから表示になったのは、apache をそういう風に変更
    了解でふ。
    >文字化け
    うちの環境(といっても雷Gさんとこの鯖ですが)では再現しませんねぇ。
    >真っ白になる
    これは経験があるのでBETA-70を新規に作成してみましたが無問題。BETA-69以前から移行する時に問題があったのかな?
    と思ったんですが・・・不定記の方は問題なく出来ているので謎のままでふ。
    あの時、ファイルを1つずつ差し替えれば分かったのカモしれませんが・・・すでに遅し。(汗)
    >jcode.pl
    そういえば、本環境の方は最新を使っていたが、テスト環境の方は古かったような気がするなぁ・・・もしかしてその可能性がありそうな予感。
  • 山銀:>中途半端に雛形にするなら固定の方がいい?
    rdfdata.rdfに記載されているchannelとdescriptionは書き換えてねとREADMEに記載すれば良いだけで宜しいのではないかと。
  • あぞっち:新規で作成されるログはsjisかな?普通に秀丸で開くことができる。追記部分はeucで開かないとみえない。
    で、sakura.cgiをみると、追記フォーマットの書き込みの前にeucに変換しているように見える。
    謎なのは、昨日の午前中まで(すなわちさくらを改造する前まで)は追記もsjisだったもよう。
    昨日の記憶をたどると・・・
    金曜日までrdfファイルへの書き出しがうまくいってなかったので土曜日に原因を探っていた。で、rdfdata.rdfとか少しいぢったらrdf関係はよくなった。その後、追記がうまくいかなくなったような気がする。rdfへの書き出しはeucみたいだから、rdfへの書き出しがうまくいくようになったのと、ログへの追記がeucで書き出されるようになったのとがリンクしているようにも思える・・・(素人考えだけど)
    追記の前のeucへのコンバートをやめれば・・・って表示されるレイアウトまではいじれても、そこまえでは人様のプログラムをいじれないので、とりあえずやめておこう。
  • あぞっち:そこまえでは→そこまでは
  • 蝦兄:jcode.plを更新したけど駄目みたいです.
    ちなみに化けてるログはこちらにアップしておきました.
    http://www.tk-works.homeip.net/support_data/20050220
    下の方にちょろっと入ってるところに「テストで書き込み」的なメッセージを入れてあります.
    どうも新規で吐かれてるログと追記で吐かれてるログとで文字コードが変わってるのは間違い無いっぽいんですが・・・
    ちなみに日記帳の閲覧状態時のソースには「このページはS-JISですよん」と言うヘッダーが入ってますね.
    sakura.cgiの中にもそれを指示するような記述がある感じですがこれは影響してないのかな?
  • 蝦兄:BETA-59で正常稼働を確認しました.
    どうもrdfの実装前と実装後で違うことが判明.
  • 蝦兄:で,開発履歴を見ているとBETA-61で「吐き出されるログをEUCに固定」とありますよね.
    これと既存のログの文字コード種別,cgiの方で指定されてる「表示時にS-JISで」に代表されるS-JIS関係の指定が喧嘩してるような気がしてきました.
    現状自力で解明できるのはこの辺までかな?
  • G兄:どうも本格的に書き込みルーチンの部分を変更する必要があるようやね。('A`)
  • G兄:基本を全てEUCで書き直した方が楽かもしれない。
  • G兄:追記で化ける件、たぶん757行目から774行目付近だろうなぁ。
    この状態だと、完全新規の場合は必ず EUC だけになるはず。
  • G兄:蝦の言ってたことが今ようやっと理解したよ。
    旧記事に新規モードで追記した場合は文字コードがEUC固定されてるので無理ですね。
    SJIS に戻そうか?
  • Casper-01:家も正常に更新できました 'ω')ノ
  • 蝦兄:>やっとわかった
    説明がヘタでスマンですw

    >文字コード
    「混在環境が問題」と言うのがはっきりしたところで,日記ページ全体の構成を統一するのが第一なんですよねぇ.

    EUC・・・どうもまだ全体的にS-JIS優勢な感があるのか,メモ帳やそれに準ずる軽いエディタでEUCを読み書きできるのが少ないっちゅーのがネックなのか,なんか取っつきにくい印象がまだ消えない(^^;)
    そう言う意味ではS-JISに統一対象を合わせるのが良いんだろうけど・・・G兄的にはEUC推奨なんだよねぇ?

    例えば
    ●ログをEUCで吐くかS-JISで吐くかをオプションで選ばせて,あとは各ルーチンがその設定を見ることで最終的に吐き出すログや日記本体のエンコードを動的に決める
    ・・・と言う方式なんかだと,カバーできるユーザーパターンは広がるんだろうけども.
    一方でそう言う複雑な機能を持ったcgiを起こすのが面倒ですわな(汗)

    または
    ●ログファイルを吐くときに一緒に文字コード情報も残すようにして,追記の場合はそこを参照することで次に書き込まれる部分のコードを決定させるようにする
    あとこの場合旧来たまってる膨大なログファイルの扱いについて問題が出ると思うけど,それらの文字コードは各ユーザーごとにずっと変更無く来てると思うので,簡単なバッチファイルとかコンバーターみたいなので任意の文字コード判別子を一気書きさせて対応とか.
    で最終的に読み出すときにログファイルに残ってる文字コード判別子を見て適宜EUCなりS-JISなり,日記帳本体の文字コードにあわせて変換して完了
    なんてのは・・・やっぱスマートじゃないか(汗)

    うーん,どうしても「新旧混在の整合をどこで取るか」っつーのがネックになりますな・・・
  • 蝦兄:・・・と書き込んだところでアンケートが出てるw

    個人的にはS-JISが良いかな,サイト全体がS-JIS構成なのと↑にも書いた通りでEUCを読み書きするのにWindows環境だと一癖ある(別途ツールが必要かつメモ帳感覚で使える軽いのがなかなか無い)と言うのが理由でし.
    つーか,現状EUCのドキュメントは閲覧はWEBブラウザ,編集に至ってはWORDとかそれ系の大物アプリ使ってるくらいなので(ぉ>うち
  • G兄:アンケート項目、1項目追加。
  • 蝦兄:いま後入力で慣れてるので何とも言えませんが,とりあえず動くならどちらでも体の方を合わせます(笑)>パスワード
  • 山銀:>アンケート
    1 : 見てみたら古いログはS-JISで現行のヤツはEUCなんですね。私は文字コードはどちらでも良いんですが・・・Win環境だとS-JISが何かと有利カモ。
      # S-JISとEUCの良い点とかの違いがイマイチ把握出来ていないので何とも。(汗)
    2 : 私は前入力派なので・・・そちらが楽です。(^^;
  • G兄:EUCにしていた理由として
    ・Windowsからはどうせさくらのエディタでしか編集しない
    ・ログを直接触るのはEUC環境のUNIX系OS上なのでEUCのほうが親和性が高い
    ・さくらをEUC化すると文字列置換などでスムーズな操作を行える
    という理由だったんですが、とりあえず全てをSJISで行います。

    正直、全てを EUC にしたい。
    多用する文字列置換が死ぬほど面倒というかSJISのせいで不要なコードが肥大化・それがバグを呼ぶという悪循環に。
  • たわし:>文字コード
    サポート対象はEUCのみ・・・って仕様にしてそれ以外を切り捨てるのもあり(ボソ
  • G兄:うん、まぁSJISで組むのは今回限りで・・・。
  • 蝦兄:ざっっくりどっちかに完全統一される分には全然OKです.>文字コード
    SJISでたまりにたまった旧来のログを救えるならば・・・(汗)

    いっそ旧ログを思い切って破棄っつーんも手ですが(ぉ
QRコード
携帯サイト試験運用
https://griffonworks.net/nikki/cgi-bin/k.cgi
1行板

備忘録
  • 無し
物欲リスト
  • Canon RF50mm F1.2L USM
  • SIGMA 20mm F1.4 EF Art
  • ニンバス チヌーク
  • OCB-1 ST II
ツーリング ドライブ兼野外撮影予定リスト