「CGI」に関する日記(6)

<前 次>

コメントラック

ドラクエ7でサンダーラットとメタルスライムをいじめてました。
目的はサンダーラットの心。
今度はゴーレムーガをいぢめる旅に。

日記、結局コメントもトラックバック受信も対応させちゃいました。
どうもブログによってトラックバック送信の際の文字コードが違うようで、はてなからの場合はUnicodeでjcode.plが対応していなかったりして、もう開き直っちゃってどんな文字コードでもそのまんま入れちゃえばいいやということで、コメント&トラックバック専用のファイルを用意して受信内容をそのまま記録という方式に。
で、後日管理人が正しいエンコードで確認してShiftJISにして日記に反映させるという方式です。
実際のところ、この日記は積極的に人に見てもらいたいわけではなく、ひっそりとよく見えるように配置しておき、見たい人は見てもらいたいし興味があるのなら毎日でも見てほしいということなので、トラックバックもあまりしてほしくはないのだけれどもしてくれたらやっぱり嬉しいという相反する考えを持っている次第であります。
そうそう、こちからは他人のブログを話題にすることもありませんし、トラックバックも送りませんよ。

ピーッピーッピーッ、バックします

う~む、そもそもこの日記の書き込み部分は管理人一人が利用するということで、ロック処理というものをしていないのです。
だから、コメントやトラックバックを下手に実装すると、2人以上による書き込みで2年分以上の日記が吹っ飛ぶかもしれない…
起こる確率としては数千分の一くらいだけど、言い換えれば数千人に一人は明日ログが消えちゃう計算だし、やっぱり可能な限りの対策はしておいたほうが安心できるというものです。
一応、今の予定としては、どちらもいったん管理人が目を通してから日記に反映することにするので、ならばこれらのユーザーからのフィードバックは小さなファイルに書き込んでおいて、消えたら残念でした、消えなかったら確認の上掲載という形でどうだ!

「Bomber丸World」のBGM作ってました。
海洋研究所のボスの音楽はとにかく勢いばっかりの曲なので勢いだけでばーっと作っちゃえそうな気がしたのですが、思ったより難しくて失速気味。

ブログとただの日記帳の中間を目指しています

「ドラクエ5」やってました。
偽太后の正体を暴くためラーの鏡を取りにいく準備段階としてマリアを誘うため教会へ。
先頭は主人公ゼボット、最後尾はマリアちゃんといい仲のヘンリー。
そのままマリアに話しかける。何事もなく会話が終わる。
あ、ヘンリー先頭のほうが良かったかも。
と思い、パーティの並びを逆順にして、その辺にいる女と会話。
あれよあれよという間にマリアが仲間に。それも最後尾に。
ごめんよヘンリー…
そして冒険の書に記録して、カジノで摩って終了。

日記についてですが、掲示板にも書いたとおり、完全にブログらしいブログにするつもりはないのでトラックバック機能はつけない予定。
とはいっても試験的に受信するだけは受信する可能性も無きにしも非ずですが。
コメントについては、要するに別CGIで処理するようにすれば良いのですが、コメントの保存形式をどうするかが問題となってきます。
単純に<br>で区切るかな…
その前に日付の記録形式を早く正常に戻さないとなぁ…

一応はてなダイアリーも試してみました。
http://d.hatena.ne.jp/tokio6/
すぐやめるつもりですが。

新しい日記で御座います

で・・・できたのだ。
これが新しい日記なのだ。
最も閲覧数の多い最新ログはHTMLで高速表示、過去ログやジャンル別の日記はPHPで効率よく管理、そして書き込みにはCGIを利用するというとても素晴らしい日記システムなのだ・・・。
それでは、また明日。

再インストール完了

ブラウザを入れなおすためLunascapeのサイトに行ったらバージョン2があったのですが、プレビューリリースということで、今は導入しないほうがよさそうだし、だからといって旧バージョンをインストールしてもすぐにいらなくなりそうだったので、とりあえずしばらくはIEで我慢ということになりました。

1日に更新していたのですが、トップページの更新を忘れていました。

DirectX8.1SDKがなかったので仕方なく9SDKをインストール。
サンプル見てみたけど数は少ないし大して見た目変わんないのにピクセルシェーダなんか使ってコンマ数FPSまで重くなるし、利用者を舐めてんのかと言いたくなる内容。
実際に製品として組み込むときにはピクセルシェーダを使わない設定とか付けたりするんでしょうかね。
とりあえずこれで「パネルγ」をリビルドしてみたけど必要環境がDirectX9になってしまっていないか不安です。

CGI&PHPの動作確認環境も何とか復帰。
ついでに新日記もちょいと更新。

使い分け

全員に全く同じ内容のページを見せる場合で、特に更新よりも閲覧が圧倒的に多い場合はHTML。
それぞれに違うページを見せる場合、更新が多く閲覧が少ない場合で、ファイルへの書き込みを伴わない場合、あるいはデータベースを利用する場合はPHP。
ファイルへの書き込みを伴う場合はCGI。
で、どうだろう。
ファイル内容はCGIとPHPで共有できるし、CGIで生成したページをHTMLファイルとして記録し、閲覧の際はそれを見せるようにすれば負荷は減らせる。
だからといって何でもかんでもHTMLを作るようにしていたら見られもしないのにHTMLファイルばかりが増えるということも。
新日記の左側メニューは基本的に月一の更新であり、かつ最新の日記とほぼ同じ回数呼ばれることになるのでHTML。
右側の日記は、よく見る人は基本的に最新のものしか見ないので最新の日記のみHTML、他はPHPで、書き込み部分のみCGI。
掲示板はランダムメッセージを表示したりクッキーを使ったりするのでCGIかPHP。
リンク集はトップのHTMLページだけで大体用事が事足りている様子なので現状維持。
TScriptはCGIとPHPを組み合わせるつもり。
カウンターはファイルへの書き込みがあるけどPHPにするメリットのほうが大きそうなのでPHP。

ニ短調ト短調

決して多いわけではないんですけどサーバーのCPU使用率が上がってきてCGIの使い方とか見直したほうがいいかと思い、ちょっと考えてみました。
HTML-CPUパワーを基本的に使わない。更新が少なく全員同じ内容を見るページに適する。
CGI--最も重いがSuExecを導入しているのでファイル書き込み等はこれを使いたいところ。
PHP--データベースとの連携が強い。CGIよりは軽い。
というわけで、これを基準にいろいろ書き換えていくつもりです。

「ふにゃふにゃ」のBGMを調べてみたら、DmとGmの合わせ技だった。
本当は長調の曲のはずなんだけど、つくりが甘かったためかよく分からないうちに短調の曲に。
どっちかというとデータ上短調扱いしたほうがわかりやすかったということだけれども。
で、そう仮定するといくらか矛盾のある部分が出てきたので、いろいろ改良中。
一年以上もこれを放置してきたわけですが…

ツボッ、パチッ、グフー

ふしぎのぼうしクリアしました。
ラスボス戦の演出とかは期待を裏切らなくていい感じ。場所が意味不明だったけど。
嫌なものはツボッと吸い込んで仲間はずれはパチッとひっくり返して、赤いのは4人で滅多切りにして、あとは途中で妖精の回復を逃さなければ負けることはないでしょう。
あ、ついでに言うとちっこいのをいじめるのも忘れずに。

アンケートが一覧表示に対応しました。
しましたけどあんまり見やすいものではなかったので使えないようにしてあります。

ヘッドフォン

学校のパソコンで昨日に引き続き3Dを頑張ってみました。
とりあえずネットでサンプル明後日適当に自分なりに書き換えて2Dポリゴンを表示して自己満足して3Dポリゴンも調子に乗ってやってみようとしたら突然リンカエラーが!
libci.libが見つかりませんって言われたって、そんなのリンクするような設定はしていないのですが・・・?
で、勿論早速MSDNライブラリで調べてみたわけですが、見つからない。
帰ってからもう一度調べてみたら、「古い iostream ライブラリ」とのことで、「最新だったら新しいの使えよ!!」などと思ってみたりもしたのですが、新しいのにどうやって変えればいいのか、新しいのに変えることで不具合が起きるんじゃないか、新しいのがまだ古いのを使ってるのに何故に古いものを切り捨ててしまったのか、などなど気になってしまって、別に何もしませんでした。(何

「ByteEdit」を更新しました。
選択内容を検索します。
ついでに言うと、ドラッグによる範囲選択と右クリックにもこっそり対応させたので、検索したいバイト列をドラッグで反転→右クリックから検索で、簡易ながらもバイト列の検索ができるようになりました。
そこそこ拡張しやすい形になっていたので両方ともちょっとだけ手を加えただけで実現できました。
こんな感じですぐできる更新をちょっとずつやって行くことにしてます。

前にヘッドホンが壊れてしまっていたので、学校の帰りにヘッドホンを買ってみました。
買いに行くと、6000円くらいのオープン型・3000円くらいの密着型・2000円くらいの密着型・1000円程度のオープン型があったのですが、6000円のは完全に予算オーバーで問題外、1000円のは用途から考えてふさわしくないと感じ却下、3000円のは2000円のと比べてどこがいいのかわからなかったので結局2000円のにしました。

ピクミンその他のゲームのページ、気が向いたのでアップしてみました。
ついでにリンク集もちょい整理。
そんでもって新日記公開。

ピクピクニンジン

ピクミンのページ作りました。
ピクミンってどう考えたって扱いが奴隷。
今のところアップしてません。
気が向いたらアップします。

ちょっと学校のパソコンでDirectX8で3Dでもやってみようかと思ったのですが、チュートリアルが意味不明だったため挫折。
変数が何のために使われてどこでどう定義されて他の変数との関係がどうなのかとかがさっぱりわからないので打ち込んだところでどうにも…
DirectXGraphicsに統合された分簡単だと思ったのですが。

新日記2002年分の過去ログを仮入力完了しました。
12月の日記はほとんど同じ話題が続いていたので楽でした。
さて後1年半分…

そろそろ更新しようかと思います。
ByteEditかDirectXでも。

ひさびさFFCC

新日記の過去ログを2002年10月まで仮入力終了。
途中から過去ログの形式が変わったりするのでちょっと入力が大変です。

あ、FFCC久しぶりにやってみました。
きわめて庶民的なアイテムしか手に入らなかったのでセーブせず電源OFF。

ふしぎのぼうし3つ目のダンジョンをクリアしました。
ゴードン似のオーリス登場。

旧日記改造日記

アクセスログを回収しました。
新しいリンク無し、記述ミスによるリンク切れ無し、ダウンロード数やや減少、Googleからの訪問激減。

新日記のログの形式を変えました。
前までは月ごとに別のログを用意していましたが、月別の表示のときには、もしログに間違った月の日記が入っていてもそのまま表示してしまうし、検索機能を使うと一気にたくさんのファイルにアクセスすることになり、いろいろと不都合があったため、全部ひとつのファイルにまとめることにしました。
PHPはCGIではないのでSuExecとは関係ない模様。
ログファイルのパーミッションは読み書きするために666でないといけないようです。
ま、日記はログ内容を整形して表示しているだけなのでログを見られる分には一向に構わないんですけど。
でも書き込み権限に関してはこれは大問題です。
というほど重大な問題でもないのですが、やっぱり第三者による書き込みを許可しているのは少し心配…
いっそのこと書き込みだけはCGIに頼るか?
これに伴い、現行の日記CGIも、新日記にできるだけ合わせた形式のログを吐き出すように改造しました。
ついでにセキュリティもほんのちょっとだけ強化。

「ふしぎのぼうし」、2つ目のダンジョンクリア。
あまりハートのかけらが集まらない…
しかもボスがポケモンっぽい…

更新インストールの巻

WindowsMediaPlayer10をインストールしました。
またまたデザインが変わってて、でも内容はどこがどう変わったのかわからなくて、結局更新チェックのダイアログを出さないためにバージョンアップしたという感じ。
Lunascapeもバージョンアップしてたけど特に必要な機能はなし。
検索するたびにバージョンアップ通知が来るので鬱陶しいことこの上ない。
なんか落ちるバグが修正されたとかで、一応インストールしましたが、30日しか使えないらしいRoboFormやら別にいらないのばっかり付いてきて、やっぱりWMP10と同じ状態に。

ランキングCGI、完全オリジナルにしました。
自分で書いた部分以外のコードを全部消して書き直し。
ロック処理とかがかなり甘くなったけど多分消えないから気にしない。

「ByteEdit」に超簡易右クリックメニューを付けてみました。
すぐ上にある編集メニューをそのままPopupMenuで出しただけ。
クリップボードの内容、せめて「ByteEdit」間だけでも共有できるようにしたいと思い、ひとつアイディアを。
クリップボード用一時ファイルを作る!
しかし旧バージョンと異なるクリップボードを使えば何かと面倒な気が・・・・処理速度も・・・

PHPクッキー設定フォーム

とりあえず練習のためクッキー設定フォームをPHPに移植しています。
明日は早いので今日はこの辺で。

PHPカウンター

新カウンターに移行するため、旧カウンターのほうを、新カウンターに対応するデータを吐き出すように改造しておりました。
新カウンターはPHPカウンターにするので、現在のSSI&CGIカウンターよりも軽くなります。

SSIの場合
リクエスト→SSI解釈→カウンターCGI呼び出し→Perl起動→CGI実行→結果を埋め込んで表示
PHPの場合
リクエスト→PHP解釈→カウンタースクリプト呼び出し→PHP解釈→結果を埋め込んで表示
で、Perl起動というのが案外重たい作業らしく、起動という作業をしないPHPの方が軽くなるというわけです。
ついでに、途中に他の人がアクセスしても、アクセス後1時間は同じ人に同じカウンターの値を見せるようにするようにしました。
これで、自分のアクセス後すぐに他の人がカウンターを動かしてキ番登録できなくなったという悲劇も起こらなく…もしかして最初から起こってない??

そうそう、「Bomber丸World」のシステムの詳細も一部公開しましたよ。

ぷしゅるる・・

よーわからんけどてけとーにデータベース作ってみた。
レポートまだできない・・・

撲滅運動撲滅委員会!?

3ヶ月間のブランクは…いやむしろ半年前から変わってないかも…
レポートダメでした。
表の番号図の描き方考察忘れ

注意事項の文面を少し修正。
別にどうでもいいことですけど。

前にも書いたことがあったかもしれないけど、HP作成論、どうも使われ方がおかしいような気がします。
私としては、サイトをこれから自分で作ろうと思っている人や、既にサイト運営をしている人、もしくはたまたま検索で迷い込んだ人などに、見てもらって少しでも参考になればと思っていたのですが、アクセス解析を見ていると、第三者が人のサイトにいちゃもんをつける道具にされているような気がしてならないのです。
近日中に、そんな使われ方をされるのは好ましくないということを明記し、それでも好ましくない使われ方が続くようであれば、強硬手段に出ることも無きにしも非ずです。
もちろん閉鎖なんて情けない手段は使わないつもりですが。
直リンク拒否の応用でやっちゃるけえ。

MySQLの管理画面を見つけました。
MovableTypeとかそんなのでよく分からなくて敬遠していたのですが、データベースはデータベースだと思い、使い方やら調べていたら何やら設定項目にMySQLと書けって指示があって、これはもしかしてと思いつつデータベース管理画面を出してみたらそれはまぎれもなく学校の生協で買う気もないのに立ち読みしていた本で見たphpMyAdminではないですか!!
まあ今は何をどう使っていいかさっぱりわかんないけど、とりあえず使えるということだけを確認しておけば、将来TscriptをPHP+MySQLで置き換えるときに使えそうです。

クオンティティ

長い文章を短時間で書ける能力が必要だと感じる今日この頃です。
何しろ私の場合考えすぎて最初の一文を書くのに一時間以上かかってしまったりして、早く書かなきゃいけないときにいろいろ困ったりするので。
とりあえず量をたくさん書いておけば質はあとからいくらでも良くできるし、冗長だと感じる表現も書いた後消せば結局短く完結にかけているわけで。
何を書くべきか書くべきでないかとか考えるよりかけることをどんどん書いていくといったよう・・・続きが思いつかなくなった。
まあいいや。

ランキングにスタイルシートを使いました。
でもいい加減そろそろAskaBBSの改造から抜け出さないと。
どこをどう考えたってAskaBBSの機能は一切残していないわけだし、無駄にもほどがあるということで、まあとにかく、いつかは完全オリジナルにする予定です。
私のCGIの書き方とも違う部分がいろいろあるわけですし。
といってもそんな書き方が確立できるほどCGIを作ったわけでもないけど。

わけあって「ゼルダの伝説-風のタクト」で神の塔に行ってみました。
ムジュラの仮面とかみたいにボスと何度でも戦えるようにしてくれていたら嬉しかったけどストーリーの関係上それは無理な話。
ゴードンさんの写真をパシャリ。
ついでに言うとクグツガノンは光の矢を適当に連射していればそれなりに楽。
剣で斬って動き止めても光の矢を構えてるうちに動き出しちゃうし。

地震があったようですね。
こちらには直接関係ないのですが、規模の割に被害が少なかったようで少し安心しました。

ごちゃごちゃ

レポートやっとりました。
計器がごちゃごちゃしてわかりにくいけど原理や結果は簡単なので普段よりは楽にできそうな気がして、その分だらけて、結局間に合わないような気がしてならないので、急いで終わらせたいのですが、まだデータ整理だけでほとんど終わらず。

掲示板に自前のスタールシートを使ってみました。
元々blockquoteでインデントしていたりしているようなHTMLだったのでスタイル指定の違いによる見た目の変化を抑えるためいろいろとタグを補ったり削ったりもしました。

そういえば「RPG±0」最近触ってないけどこれも時々いじってやらないと忘れてしまうかもしれないのでそろそろ開発再開しなければと思っています。

HP作成論を更新しました。
HPM時代のもののログを手直しして書いただけなので更新履歴には入れていません。

有題

PHP。
モジュールじゃなくてCGIとして、
つまり、
HTTPDとは切り離して実行するようにしたら、
エラーが起きなくなりました。

XP。
電源を自動で切るオプションを切ったら、
5時間ほど放置しても、
落ちなくなりました。

簡易アクセス解析。
アップしました。

ログ。
2日~13日の分を、
回収しました。

<前 次>