トップ 最新 追記

Eroge RSS Checker 運営記録

Categories | メモ | 運営 | 感想 | 記号変更 | 雑記 | 雑文 | 思案

合計: 今日: 昨日:
2004年
10月
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31

rss1.0

ここは、「Eroge RSS Checker」に関する運営の記録を書きとめておく場所です。第三者に説明する文体で書いていますが、大半は備忘録です。

  1. スクリプトを汎用化して公開する。---最終目標
  2. CSSを論理的に使う。---努力目標
  3. デザインを改善する。---努力目標
  4. 攻略の完全・不完全を出来る限り判別する。---努力目標
  5. 管理要員用のページの充実。---努力目標
  6. JANコードの入手先を探す。---躊躇中
  7. ブランドの複数登録。---大規模改修のとき
  8. 登録を簡潔にしつつ、marker登録を半自動化する。---暇なとき

2004-10-21 [J] 移転1

_ [運営]100MB,CRON,MySQL,PHP,転送量5GB以上/Day,アダルト紛いのサイト可

という条件で安くあげられる所となるとカードキャプチャーさくらの大ファンの社長さんの趣味で命名された「さくらインターネット」しかなかった(スタンダードで転送量10GB、プレミアムは決まっていないそうだ。よそは大抵1GB)。
PgSQLが使えないのでErogameScapeからのデータ取得が実行フォームからしか手に入らなくなる、MySQLの日本語ソートに未対応など色々と問題はあるが、まぁなんとかなるだろう。
「アフィリエイトプログラム」を導入すれば、広告1つ置けば運がよければ、必要経費くらいは賄えるはずなので金銭面でもいい感じ(当然、ビジュアルアーツの広告載せれば、月4千円もらえるので十分賄えるが、経費以上なので・・)。
MySQL4系なので、データベースの正規化も実現できそう。数分ごとに数サイトづつ順々に巡回する方法を思いついたので、それを実現すれば負荷が分散され、数百サイトでも十分対応できるようになると思うので、登録サイト数を強化できる。

 まぁとにかく元手が掛かるのでもうちょっと真剣に仕組み作りと、出来たスクリプトの配布に力を入れる事が出来るはず。目指すは「シンプルで使えるサイト」、そして、自動巡回リンク集の普及。

と思っていたら・・・・MySQLの日本語ソートに未対応は非常に大きな問題だ。あいまい検索は全て不可のようだし、50音順もどんな方法を使っても出来ないようだ。MySQL4.1以上だと問題ないようだが・・・・。この問題は結構頻繁に取り上げられていて、FAQに入っているレンタルサーバーも存在した。反面、サポート外との事で取り合ってくれないところも多いようだ。
これさえ解決すれば・・・無問題なのに・・。



2004-10-23 [J] 移転2

_ [運営]サーバーダウン

かなり長時間サーバーがダウンしている模様。
回復するのだろうか・・・・・。
こうなったら、無理は承知で三行半を突きつけた「さくら」にもう一度ご厄介になるしかないか・・・・。


>再チャレンジ
さくらさんに再アタック中。
MySQLの設定を確認したら・・・。
character_set latin1
character_sets latin1 dec8 dos german1 hp8 koi8_ru latin2 swe7 usa7 cp1251 danish hebrew win1251 estonia hungarian koi8_ukr win1251ukr greek win1250 croat cp1257 latin5
character_setはまだ分かるが、character_setsに日本語系の言語が1つも見当たらないところをみるとまっさらで、インストールしているんだろうなぁ・・・・。

で、ちょっと他の文字セットで試して見た。当然「UTF-8」だが、なんと検索が上手くいったように見える。
全てのスクリプトを「UTF-8」に変更すればこの問題は解決できそうな予感。とにかくもう少し、検索に不備がないか確かめて見る。

後は、CRONの制限。実行頻度が1時間に2回以上の場合やCPU時間を60秒以上連続で利用される場合の削除の可能性や、5個までの個数制限は結構つらいかもしれない。数分ごとに実行できないので、小分けに巡回する事も難しいし、60秒の制限があるので、登録可能サイトは・・・200程度が限界だろう。「Last-Modified」に対応するサイトやRSSが多ければ2倍でも軽いがちょっと微妙。

PgSQLが使えないのでErogameScapeからのデータ取得が実行フォームからしか手に入らなくなる問題は、当たり前の事なので少し不安定な気がするがなんとかなるだろう。

ちょっと光が見えてきた。今よりは多少不便になるかもしれないが、サポートとサービスの持続に対する安心感が得られるので楽になるかもしれない。


>大体終了
まず、欠点、課題。
1、CRON登録のスクリプト総数10個を、半分に減らす。
2、キャラクタークラス、([、-○])が使えなくなったわけを考える。
3、挙動不審なスクリプト群を検査する。
4、UTF-8,UTF-8Nなど文字セットの初心者マークを獲得する。

要するに、雑多な部分はまだまだですが、大体終わりました。
UTF-8,UTF-8Nと2種類あったのは驚き。とにかくなんとかなりそうで一安心。

2004-10-26 [J] 移転3

_ [運営]移転終了

解決法+
1、CRON登録のスクリプト総数10個を、半分に減らす。
普通にスクリプト群を、includeして実行時間別にまとめただけで、解決。常識以前のレベルでした・・・。

2、キャラクタークラス、([、-○])が使えなくなったわけを考える。
理由は文字セットによって対応する16進法表記が違うために起こった。
それは分かっていても、解決法となるとちょっと難しい。全角記号が広く分布しているため、[§-ё]、[―-⌒](,覆匹盻去する場合は、[―-〕])、[─-〕]、([・-仝])、[!-¥]とでもすればいいか?
[―-〕]、[!-¥]の二つでやるのが一番簡単だけれど・・・保留。

3、挙動不審なスクリプト群を検査する。
挙動不審の理由は文字セット、多分解決済みですが、もう少し様子見。

4、UTF-8,UTF-8Nなど文字セットの初心者マークを獲得する。
結構面白いかもしれないが・・・。

CRONが上手くいかなかったのは、実行ファイルを指定するだけではPHPファイルとして扱えなかったため。
/usr/local/bin/php -c /home/ユーザー名/www/php.ini /home/ユーザー名/www/ファイル名
実行ファイルが標準文字セットと違う場合は、各自個別のphp.iniを使わなければならない。
まぁ、なんとも融通がきかない・・。

ゲーム攻略の館、GATE DIVEへのリンクが正しくなかった理由も文字コード。
UTF-8は他の文字セットとは違い、可変長(長さが不定)なので、元の2バイトでマルチバイト文字列1文字分としていた設定が問題になっていた。
マルチバイト用の関数に置き換えただけで解決。

文字セットによる文字化け(文字セットの変換時に対応する文字が見つからなかったため大体文字「?」に置換されていた、一部記号が類似記号で代替されていた)。
これは、mb_convert_encodingが機種依存文字を筆頭に一部変換に対応していなかったために起こった。漢字コード変換(jcode.php)で解決。

2004-10-31 [J] 正規表現を使った記号の除去

_ [運営]全角記号の除去

< 共通 >
$search = array( " ", " ", "♥", "♥",  " ", """,  "&","<",">","+");
$replace =  array( "", "", "", "",  "", "",  "","","","plus");
$gamename = str_replace($search,$replace,$gamename);
$gamename = mb_eregi_replace("[[:punct:]]","", $gamename);
< UTF-8 >
$gamename = mb_eregi_replace("[‐-Å]","", $gamename);
$gamename = mb_eregi_replace("?","", $gamename);
$gamename = mb_eregi_replace("[←-⌒]","", $gamename);
$gamename = mb_eregi_replace("[─-〕]","", $gamename);
$gamename = mb_eregi_replace("[!-¥]","", $gamename);
$gamename = mb_eregi_replace("[・-ヾ]","", $gamename);
$gamename = mb_eregi_replace("[§-ё]","", $gamename);
「?」は「〜」みたいなやつが化けてます。
< EUC-JP,(SJIS) >
$title = mb_eregi_replace("[、-○]","", $title);
これが一番良い方法か分からないし、漏れが出る可能性もある。全角記号の部分のみ違うが、実際使っているものをそのままコピーしてみた。動作が全く同じかというとそういうわけでもないが、UTF-8の場合かなりばらけていて面倒なのは確か。
主な違いは、 ↓気覆茲Δ平字に関する記号を含むかどうか。UTF-8の方は含まないようにしています。