年末のアクセス増加 / [server]アンテナを立てたい / 風邪ひいた(2) / [tDiary]tdiarygrep を入れた / [Web制作]シンプルな Blog ツール / 紙 / [tDiary]referer_scheme

年末のアクセス増加

今年は無かった、対策したのに・・・

アンテナを立てたい

といってもテレビじゃなくてサイトの更新情報を自動チェックしてくれるツールのほう

* なつみかん
  * ((<URL:http://aniki.haun.org/natsu/>))
* 朝比奈アンテナ
  * ((<URL:http://masshy.fastwave.gr.jp/hina/release/>))
* たまてばこ
  * ((<URL:http://www.wakaba.toyonaka.osaka.jp/~ikemo/soft/tama/>))
* WDB
  * ((<URL:http://na01.shonan.ne.jp/~gorry/wdb/>))
* RNA
  * ((<URL:http://www.semblog.org/wiki/?rna>))

アンテナ関連 - 更新情報を自動チェックするツール。

風邪ひいた(2)

ようやく熱が引いてきた。

30日からほとんど寝たきりだったから腰が痛い・・・

tdiarygrep を入れた

単純な検索がしたいだけなので WEB インターフェースで grep が実行できるのは便利。

オリジナルの tdiarygrep は ERB あたりでエラーが出たので rufein さんのところ のを使わせていただいた。

Matzにっき で使われてるのはカスタマイズされてるみたい。

referer_scheme

ただの日記 より

最新のプラグイン集 をダウンロードしてきた。

最終更新時刻: 2008年08月21日

[todo] Hikiを0.5devにバージョンアップする / [tDiary] tdiarygrep がバージョンアップ

Hikiを0.5devにバージョンアップする

CVSで取得する必要あり。

http://www.namaraii.com/hiki/?HikiFarm#l1

tdiarygrep がバージョンアップ

あおきにっきより

しまった。erb がない場合を考えてなかった。erb/erbl にフォールバックしてても、
erbl 自体がパスに入ってなければ意味がない。

だそうで昨日言ってた部分が直って、うちの環境でも動くかもと思ったけどやっぱり駄目みたい。

ちょっとソースを見てみた。

ERBをインクルードする部分で、

begin
  require 'erb'
  ErbEvaluator = ERB
rescue LoadError
  require 'erb/erbl'
  ErbEvaluator = ErbLight
end

もしERBが存在しなければERbLight(従来の名前)をインクルードしてるわけだけど、

ErbEvaluator = ErbLight

はERbLightでは?帰ったら試してみよう。

追記: 書き換えたら使えるようになった。

最終更新時刻: 2008年11月26日

[tDiary] tdiarygrep rev 1.41

あおきにっき より

昨日のERbLihghtの部分を本家でも直していただけました。

最終更新時刻: 2008年10月24日

[todo] TVキャプチャボードで遊ぶ / [retropc]所有しているPC-88シリーズ / ThinkPad X31をIBMソフトウェア導入支援で簡単アップデート / [server]またHDDのセクタエラーでサーバ停止 / [server][todo]HDD問題今後の対策 / [todo]第1四半期のTODO / 明日から仕事

TVキャプチャボードで遊ぶ

所有しているPC-88シリーズ

押入れを掃除したおかげで所有機種を把握できたのでメモ

  • PC-8801mkII
  • PC-8801mkIISR
  • PC-8801mkIIMR
  • PC-8801mkIIMH

中期の機種に偏ってる。どうせなら初代88か、後期のMA2とか、変り種のTRあたりを保存しておきたいのに。

そういえばCD-ROMが載ってるMCなんてあったなー

PC-98/88コンパチの機種には萌えない。(追記:PC-98DOおよびDO+)

PC-88VA/VA2/VA3あたりは数が出回ってない上にVA3(2も?)には2HDじゃないフロッピードライブが載ってたような。この辺もすでに88じゃない気が・・・16ビットだしね。

ThinkPad X31をIBMソフトウェア導入支援で簡単アップデート

だめだめ日記 2003-01-02 IBM - ダウンロード・ファイル & ドライバー より

アイコン

WindowsUpdateのように最新のIBMドライバ/ユーティリティを導入してくれる。これは便利。

またHDDのセクタエラーでサーバ停止

またセクタエラーが出て日記が見れない状態に。サーバー(DELL Inspiron 4100)をリブートしたらまだ行けた。

しかし先月HDD交換したばかりなのに・・・

HDD問題今後の対策

もう2.5インチHDDで良さそうなのは余ってないので交換はできない。それ以前に、新しいHDDを入れても発熱ですぐに同じ結果になる可能性が高い。

2.5インチHDDはサーバ用途にはコスト/性能面でベストとはいえないので、3.5インチのHDDを使ったデスクトップのファイルサーバを設置してデータを管理しよう。

INSPIRON4100にはHDDを付けずに、ファイルサーバ上のシステムを起動する。つまりディスクレスPC。PXEに対応しているので、ネットワークブートが可能なはず。

第1四半期のTODO

ここ3ヶ月中に済ませておかなければいけないお仕事

  • フォームメーラ作成
  • 社内データベースサーバの検討
  • 侵入検知システム(IDS)の検討
  • 番組データ更新スクリプトの見直し

とくに更新スクリプトは先月30日早朝にトラブってるので早急にね>自分

明日から仕事

休み中にサーバが落ちなかったのが何より・・・

最終更新時刻: 2006年10月29日

ClearType + Tahoma Font = 見やすい / [todo][tDiary]tDiaryとトラックバック / 会社のマシンにWindows XPをインストール / Windows XPで気に入ってる点 / [todo][tDiary]会社の日誌をtDiaryで

ClearType + Tahoma Font = 見やすい

ClearTypeのときはアイコンのフォントをTahomaにすると見やすいよ、とTomさんに教えてもらったので適用してみた。

画像の説明

おお!英語版WindowsXPのデフォルトフォントだ!

アルファベットが読みやすいのでこのまま使います。

tDiaryとトラックバック

tDiaryでトラックバックを頻繁に使ってるサイトを見かけない。

そもそもトラックバックとは、参照したことを相手の記事に送信することで共通のテーマの記事同士を繋げるためのものなので(だと思ってるけど勘違いかも)、それがtDiaryの場合だとRefererで事足りてしまうからなんだと思う。

そんなことは議論され尽くしてるだろうし、その上でこのプラグインがあるんだからきっと面白い使い方があるはず。

会社のマシンにWindows XPをインストール

仕事始めということで(?)Windows 2000だったのをXPにアップグレード。

自宅のメインマシンのときと同様だけど、前回書き忘れたことをメモしておく。

確実に不要と思われるサービスを止める。

  • Windows Time
  • Themes
  • Messenger

環境変数を設定

  • XYZZYHOME=D:\usr\local\xyzzy
  • HOME=D:\home
  • PATH=〜;D:\usr\bin

「送る」を整理(C:\Documents and Settings\User Name\SendTo)

Windows XPで気に入ってる点

Windows 2000に比べてWindows XPはちょっと便利になってる部分がいくつかある。

  • ClearTypeを使うと文字が読みやすい
  • 画像のビューアがついている
  • 写真の印刷ウィザードは複数画像を一度に印刷するのに便利
  • USBストレージデバイスの書き込みキャッシュが無効になっているので、抜き差ししたときに怒られない
  • CMYKのJPGファイルが見れる

もちろんわけのわからない止まり方をしたりと不具合もあるわけど、最近は少なくなった。

会社の日誌をtDiaryで

社内サーバにtDiaryを立ち上げてそこに書き込んでいこうかな。

最終更新時刻: 2008年07月11日

[tDiary] xyzzyでtDiaryの更新作業を行う / 会社の日誌をtDiaryで(2) / PorFTPDが暴走 / [book][buy]Linux World 2004年2月号 / Rubyコーディング規約

xyzzyでtDiaryの更新作業を行う

xyzzyのtdiary-modeのおかげで日記をつける癖ができている。たとえばコーディング中、ふと日記のネタを思いついたときの行動はこんな感じ

  • M-x tdiary-replace を使い Date: はデフォルト値(今日の日付)のままENTER
  • ユーザとパスワードを入力すると日記の内容がバッファに展開される
  • 日記を編集し C-c C-c の後ENTERを2回入力して日記を発行する

途中書きでも保存する感覚で C-c C-c してしまうことがある。さらに発行後も推敲しながら再発行しまっくているのでTDIARYTIMESは真っ白け。

便利すぎるツールがゆえの功罪です。(違う)

会社の日誌をtDiaryで(2)

複数人でやるとしたら

  • 上司から部下に仕事の駄目出しトラックバックを飛ばす

みたいなトラックバックの有効(?)な利用法ができそうだ。

あと社内Blogについても調べてみたらGoogleはプロジェクト単位でBlogを立ちあげているらしい

元ネタのインターネットマガジン1月号を帰りに立ち読みしよう。



PorFTPDが暴走

CPU負荷が急激に高くなって落ちかけた

$ top -b -n 1
  PID USER     PRI  NI  SIZE  RSS SHARE STAT %CPU %MEM   TIME CPU COMMAND
32161 httpd     25   0   780  780   364 R    22.7  0.3  19:19   0 in.proftpd
31818 httpd     25   0   716  716   300 R    19.8  0.2  20:12   0 in.proftpd
以下略
$ /usr/local/sbin/in.proftpd -v
- ProFTPD Version 1.2.8

明日管理者の方と相談して1.2.9にバージョンアップしよう

Linux World 2004年2月号

Rubyコーディング規約

Rubyコーディング規約

A DAY IN THE LIFEより

最終更新時刻: 2008年11月05日

[server] Flonix - USBメモリから起動できるLinux / [server]ファイルの更新日時 / [server]Debian GNU/Linux Diskless-HOWTO / [server]仮サーバに交換 / [xyzzy][todo]cvs-mode / [buy][server]Maxtor 80GB HDD 7000円 / [server]IBM PC 300GLをファイルサーバにする / [wish][server]UPS / [server]Bonzai Linuxをインストール(1) / [server]NFSとファイアウォール / [tDiary]RDで/(スラッシュ)を含む文字列にリンクをはりたい / [wish]ブートできるUSBメモリ

Flonix - USBメモリから起動できるLinux

Flonix公式サイトより

Flonix is a complete, compact and nomad Operating System (OS) for PC computers.
Flonix USB Edition is designed for USB(1&2) storage devices (64MB & more)

ファイルの更新日時

ネットワーク上のファイルの更新日時が未来になってるファイルがあったが、この日時の更新は各クライアントが行うのでファイルサーバの時間は関係ない。

正しく無くてもあまり気にしない。

Debian GNU/Linux Diskless-HOWTO

Debian GNU/Linux Diskless-HOWTO

仮サーバに交換

そろそろINSPIRON4100のHDDが限界に近いので、完全にだめになる前に先代(Sotec Winbook)にまたも出張ってもらった。

cvs-mode

Mirage Towerより

ここのひえさんのツッコミと同じく前にダウンロードできなくて諦めてたんだけど、最新版は大丈夫みたい。

早速なかださんのサイトのアーカイブからダウンロード。

同じくMirage Towerの2004-01-07 xyzzyのcvs-modeでssh認証も参考になりそう

Maxtor 80GB HDD 7000円

自宅DMZに置くファイルサーバに取り付ける

IBM PC 300GLをファイルサーバにする

IBM PC 300GLでNFSサーバを動かしてファイルサーバにする。OSはDebian(Bonzai)を使用。

こいつの今のスペックは

  • CPU Pentium II プロセッサ 400 MHz(うろ覚え)
  • Memory 256MB SDRAM
  • ATA133 80GB HDD

このマシンのいいところは何といっても音が静かだということ。電源部が秀逸。

今まではノートPCがサーバだったので停電にはバッテリで対処していたが、このマシンはデスクトップなのでUPSを購入する必要がある。

UPS

APCとOMRONの機種を店頭でみかけた。

どちらも1万円台からある。

Bonzai Linuxをインストール(1)

IBM PC300GLにBonzai Linuxをインストールした。

パーティション構成

  • /boot 32MB
  • SWAP 512MB
  • /(ルート) 2GB
  • /var 残りすべて

参考サイト

NFSとファイアウォール

NFS-HOWTO(日本語訳)のNFS とファイアウォール (ipchains と iptables)を参考にする。

NFSはいろいろなサービスで成り立っているのだな、と思った。NFSv4になるともっと単純になるのかな。

RDで/(スラッシュ)を含む文字列にリンクをはりたい

例えば

((<Debian GNU/Linux|URL:http://www.debian.org/>))

だとエラーが出る。

((<Debian GNU Linux|URL:http://www.debian.org/>))

だと出ない。

と思ったらRD working draft 日本語版に書いてあった。

Reference内では"|"や"/"は特殊文字なのでこれらを使いたい時には、
それを含む部分ごとダブルクオートで囲ってやらないといけません。
これはReference内のどの部分でも同じです。
((<"Bar | inside display text"|Label>))

つまりこれが正解

((<"Debian GNU/Linux"|URL:http://www.debian.org/>))

ブートできるUSBメモリ

IBMのUSBメモリはFDDエミュレートしてくれるので対応している。一本持っているがこれはデータ用なので、USBメモリLinuxを試すためにもう一本欲しい。

最終更新時刻: 2008年09月04日

[server] Bonzai Linuxをインストール(2) / tml - Rubyで実装されたメーリングリストマネージャ / 番組情報更新スクリプト

Bonzai Linuxをインストール(2)

不良ブロックのスキャンが終わらない。もう少なくとも3時間はやってる。

ただこのHDDは購入後初めての使用なので一応チェックはしておかないと。

それよりもBonzaiではインストール言語に日本語を選ぶとセカンドステージで文字化けするらしい(Debian GNU/Linuxテンプレより)ので前に戻って変更しなきゃ。できたっけな。

tml - Rubyで実装されたメーリングリストマネージャ

tml

dellin's tDiary より

番組情報更新スクリプト

変更点は

  • データをインポートできなかった場合はロールバックするようにした。
  • 更新単位をファイル単位から日付・チャンネル単位に変更
最終更新時刻: 2008年09月26日

[server] Bonzai Linuxインストール(3) / [server]NFSの設定 / [todo][server]QuickML / [wish]バックアップ媒体(DVD-RAM) / [server]NFSの設定(2)

Bonzai Linuxインストール(3)

無事インストールできたがNIC(PLANEX FW-110TX-PK)を認識しない。modconfで8139tooを組み込んで解決した。

apt-setupでsource.listを作ってapt-get upgradeで最新の環境にした。

NFSの設定

  • インストール時カーネルコンフィギュレーションでnfsdをチェック
  • apt-get install nfs-kernel-server

参考になりそうなサイト

最近のNFSはrpc.lockdが不要で必要なサービスはrpc.mountd、rpc.nfsd、portmapらしい

Red Hat Linux 7.2: オフィシャル Red Hat Linuxリファレンスガイドより

最近といってもこの資料もちょっと古め

バックアップ媒体(DVD-RAM)

個人マシンのデータをバックアップしたい。数年分のメールデータとか、仕事のデータとか。デジカメで撮った写真データとか。

容量的にはCD-R等の640MBでも十分だが、フロッピーの1.4MBでは小さいし保管が難しい。

CD-RやRW、DVD+-R/RWは定期的なバックアップには向かない。

やはり書き換え/保管の容易なMOやDVD-RAMが適当だ。

今なら値段的にDVD-RAMがお得。買っちゃおうかなー。

WPC ARENA / 全DVDに対応、日立LG製DVDマルチプラスドライブが1万2999円!

でも去年の春にDVD+-R/RWドライブ買ったばっかりなんだよね・・・

NFSの設定(2)

試しにマウントしてみる。

サーバ(192.168.1.2)の設定

エクスポートディレクトリを設定

# /etc/exports
/var/nfs      192.168.1.3(rw,no_root_squash)

エクスポートテーブルを更新

exportfs -a

portmapを許可

# /etc/hosts.deny
ALL: ALL

# /etc/hosts.allow
portmap: 192.168.1.3
mountd: 192.168.1.3
# lockd,statdもいるのかな?要調査

まだiptablesを設定していないので以上の設定で完了。

クライアント(192.168.1.3)の設定

マウントする

mount -t nfs 192.168.1.2:/var/nfs /var/nfs

しかしiptablesで弾かれた、抜粋すると

SRC=192.168.1.2 DST=192.168.1.3 PROTO=TCP SPT=111 DPT=694 ACK SYN

あて先ポート(DPT)は接続のたびに変化する。ACKとSYNが立っているので接続済みパケットだからACCEPTしてるはずだけど・・・と思ったが、

iptables -A INPUT -p tcp --dport 1024:65535 \
 -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p udp --dport 1024:65535 \
 -m state --state ESTABLISHED,RELATED -j ACCEPT

1024未満のポートは許可していなかった。しかしそもそもなんで予約ポート中を使うのか。

とりあえずホストを指定して、すべての接続済みパケットを通すルールを追加した

iptables -A INPUT -s 192.168.1.2 \
 -m state --state ESTABLISHED,RELATED -j ACCEPT

無事にマウントできたが釈然としない。

最終更新時刻: 2008年11月06日

[server] メールサーバを再起動 / [server]自宅サーバ稼動状況 / [wish]UPS / [tDiary]tDiary+CVS(2)

メールサーバを再起動

数ヶ月ぶりにメールサーバ(Let's Note AL-N2)を再起動した。

最近異音がしてたのと、LANカードが抜けかかってエラーが出てたので念のために。

自宅サーバ稼動状況

ファイルサーバとか仮運用中のサーバとか多くなってきたのでまとめておく

サーバセグメントに設置している機器

  • IBM PC300GL
    • ファイルサーバ構築中
  • Panasonic AL-N2
    • メールサーバ
    • DNSサーバ
    • NTPサーバ
  • SOTEC Winbook Eagle/X 266CTX
    • WEBサーバ(仮)
  • DELL INSPIRON 4100
    • WEBサーバ(HDD故障中)
  • マイクロ総合研究所 NetGenesis SuperOpt70
    • LANとDMZを繋ぐルータ

UPS

OMRONかAPCの。

tDiary+CVS(2)

hiki (farm) のデータを cvs で保存

これだ。これをtDiaryでやりたい。

最終更新時刻: 2008年10月28日

UPS / [server]SSH接続ができなくなった / [server]NFSサーバ+iptables

UPS

BX50XFV

SSH接続ができなくなった

PC300GLにSSH接続できなくなった。

原因はNFSの設定でhosts.denyに書いたALL:ALLの指定。hosts.allowにsshd:ALLを記述。

それにしてもxinetdってhosts.deny/hosts.allowを参照してたんだ。denyしたけりゃdisable=yesするし、ホストごとの制限ならonly_fromでできるから必要ないと思うんだけど。

NFSサーバ+iptables

セキュリティとNFS

最終更新時刻: 2008年08月21日

汎用連想計算エンジン(GETA) / “hp deskjet 955c”を貰った / [book][buy]BSD magazine the DVD / BSDとLinux / [todo]PDF記事 / 自宅メインマシンのベンチ

汎用連想計算エンジン(GETA)

汎用連想計算エンジン(GETA) 公開HP

Ascii24の関連記事の検索で使われている。

“hp deskjet 955c”を貰った

99年末に発売したモデルだがコードを印刷したりするだけなので白黒がそれなりの速度出れば十分。

BSD magazine the DVD

BSD magazine the DVD

業務でBSDを使うことになるかもしれないのでバックナンバーが欲しいと思ってた。ちょうどいいので即購入。

BSDとLinux

WebサーバとかファイルサーバではDebian Linuxを使いたい。メールサーバにはFreeBSDがよさそう。

前者の理由はLinux+Apache(SAMBA)のほうがネット上の情報量が豊富であるから。またその実績も同様。

後者はqmailとの相性かな。

調査したわけじゃなくて単なるイメージだけど。

今は業務でもプライベートでもLinuxを使ってるけど、適材適所で使っていきたい。

さしあたって自宅メールサーバをFreeBSDにするところからはじめよう。できればディスクレスで。

PDF記事

ねういちさんも同じようなこと書いてるけど、PDFの雑誌記事って結局読んでないな・・・

  • 日経ソフトウェア 縮刷版
  • Linux magazine the DVD 2003
  • Linux Japan過去記事大全
  • リナックスワールド 2003年5月号 1年分のバックナンバー収録
  • Software Design 2003年5月号 2001アーカイブダイジェスト

今度全部まとめてノートPCのHDDに放り込んでおこう。

自宅メインマシンのベンチ

自宅メインマシン(自作)の速度がスペックより体感で遅い気がした(特にメディアプレイヤーのこま落ち)のでベンチマークで測ってみた。

スペックは以下のとおり

  • CPU Celeron 2.8GHz
  • Memory 512MB DDR SDRAM/PC2700
  • M/B GA-8PE667 Pro
    • DDR333
    • AGP 4X
    • ATA 100
  • VIDEO SAPPHIRE ATLANTIS RADEON 9600

ベンチマークソフトは"FINAL FANTASY XI for Windows - Official Benchmark Program"を使用。

  • 1024*756 32ビット RGB接続
    • 1回目 2748
  • 1280*1024 32ビット DVI接続
    • 1回目 2749
  • 1280*1024 16ビット DVI接続
    • 1回目 2794

遅い気がする。今度ちゃんと調べてみよう。

最終更新時刻: 2008年11月12日

[programming] Subversion 1.0 がもうすぐリリースされる? / Debian でのカーネルアップグレード / [todo]昔の画像が消えてる / [book]Linux magazine 2004年2月号 / QuickMLをインストール

Subversion 1.0 がもうすぐリリースされる?

wakatonoの戯れメモ(2004-01-09) Subversion 1.0 へのカウントダウン?より

MLに流れたメール「(proposal) Subverion 1.0 date: 23 Feb 2004」が元ネタ

Debian でのカーネルアップグレード

Debianでのカーネルアップグレード

wakatonoの戯れメモ (2004-01-05) Debianカーネル再構築 より

カーネル2.6にしたいにゃー

昔の画像が消えてる

20031029#p3

バックアップ&リストアしてるうちに消失した模様。というかそんな覚えがある。昔のバックアップがあったら復活させよう。

Linux magazine 2004年2月号

KNOPPIX 3.2日本語版DVD版

これは珍しい。LinuxTag版はLinuxTagだけのスペシャルバージョンらしく以後のリリースは、またCD-ROMで行われるらしい。

単純にISOイメージをDVDに焼くだけでは使えないのかな?DVD版作成のノウハウが公開されると嬉しい。

特にORCAなんかを使いたい場合はCDよりDVDのほうが容量的に安心だと思うのだけど。

巨大Webサイトの裏側を探る

具体的に月間2億ページビューのサイトのサーバのMRTGグラフが掲載されていたりして参考になる。

また、コンテンツの配置のことも書いてあって二つの方法が示されている。引用すると

  • すべてのサーバのローカルディスクにコンテンツを配置―ステージングサーバを用意し、そのサーバにコンテンツが配置されたら全サーバに同期処理を行う。
  • NAS(ネットワークアタッチドストレージ)にコンテンツを配置―NAS上にコンテンツを配置し、NFSでWebサーバからマウントする。

そしてこの方法に対して「前者のばあいはコンテンツの同期にタイムラグがあり、コンテンツが大きくなればなるほどトラブルが起こりやすい。よって、後者をお勧めする。」としている。

その他Apacheのモジュールを削ったり、設定のカスタマイズをする・・・など。

ただ、ページ数が少なかったのが残念。興味深い記事だったのでもっと読みたい。

QuickMLをインストール

最終更新時刻: 2008年11月12日


[server] カーネルをバージョンアップ / [programming]Webアプリから2行でExcelファイルを出力する方法 / [todo]BitChannel / [server]NFSでWebサイトのコンテンツを共有 / [server]自宅サーバのディスクレス化 / [Web制作]Googleから締め出される

カーネルをバージョンアップ

PC300GLのカーネルをバージョンアップした。

Kernel 2.4.24 for Debian 3.0という記事を見つけたので試してみた。2.6にカーネルバージョンアップする練習にもなるし。

現在は2.4.20が入っている。

まずはsouce.listを編集

# /etc/apt/source.list
deb http://www.backports.org/debian stable kernel-image-2.4.24-i386

新しいカーネルをインストール

apt-get update
apt-cache search kernel-image
apt-get install kernel-image-2.4.24-1-686

そしてrebootしたところカーネルパニックしてしまった

debian-users:32384に同じような報告があった。カーネルパニック時のメッセージを引用する。

| request_module[block-major-3]: Root fs not mounted
| VFS: Cannot open root device "302" or 03:02
| Please append a correct "root=" boot option
| Kernel panic: VFS: Unable to mount root fs on 03:02

解決するには/etc/lilo.confにinitrd=/initrd.imgを追加する

image=/vmlinuz
       label=Linux
       read-only
       initrd=/initrd.img

そして設定を有効にするためにliloコマンドを実行。

再度リブートして起動できることを確認。

Webアプリから2行でExcelファイルを出力する方法

Webアプリから2行でExcelファイルを出力する方法より

Content-Type: application/vnd.ms-excel
Content-Disposition: attachment; filename="hoge.xls"

BitChannel

BitChannel

NFSでWebサイトのコンテンツを共有

先日からNFSサーバ上の/var/wwwをWebサーバからマウントして、そこでコンテンツを共有していた。

現在のWebサーバはSOTECのノートでUSBの遅いNICを使用していたため、このサイトへのアクセスが異常に遅くなっていたのはそのせい。

そこでHDDが今にも火を噴きそうなINSPIRON4100からも同じ場所を共有して、こちらを復活させた。さすがに速い。

仮にINSPIRON4100のHDDが壊れてもNFSサーバ上にデータは残る。そのときは再度SOTECノートを動かせばいいのですぐに復旧もできる。

というか前回前々回のクラッシュは、おそらくデータ部への書き込みが頻繁にあったということも一因なので、システムだけならばしばらくは持つでしょ。と楽観視してみる。

自宅サーバのディスクレス化

現在Webサーバは本番のINSPIRON4100と予備のSOTECノートがある。

まず今週末にはINSPIRON4100のシステムをNFS上に置いて、ディスクレスマシンにしたい。ネットワークブートに対応しているので、完全なディスクレスにできるはず。

SOTECノートはPXEに対応していないのでFDDからの起動にする。問題はNIC。USB接続のNICはFDD上のgrubが認識するかどうかも心配だが、なにより遅い。3COMのPCMCIAのNIC(10BASE-T)を安く手に入れる予定。

メールサーバはLet's NOTE AL-N2だが、これもPXEに対応していないのでFDDブートにする。問題はOSで、できればFreeBSDを入れたいのだがはたしてできるのだろうか。

Googleから締め出される

仕事で作ってるサイトのすべてのページがGoogleに引っかからなくなった。というよりドメインごとGoogle内から抹消された模様。

どっかで読んだなこんな記事。と思って記憶をたどってITmedia:GoogleパワーがWebの脅威に?を発見。この記事だ。

何故削除されたのかに興味がある。スパムと判断されたのか、もしそうならばどの部分がそう判断されたのか。

最終更新時刻: 2006年10月29日

Googleから締め出される(2)

原因を考えてみた

ロボットがクロールに来たときにサーバが止まっていた

サーバがとまってたときにクロールが来たとして一度や二度のことで抹消されるとは思えない。が、可能性はある。

第三者が削除依頼を出した

削除依頼できるのか調べて見たら、Google ページの削除自動 URL 削除システムというページを発見。しかし、これが働くためにはまずrobots.txtを配置していなければいけないらしい。つまり管理者でなければ行えないので無理。

グーグルダンス等のデータ構成中の弊害?

一時的なものかも

最終更新時刻: 2008年07月30日

[todo] hp deskjet 955cをLinuxで使う

先日貰ったプリンタ(deskjet955c)をLinuxに繋いで共有する予定なので事前調査。

中古PC講座ではまさにプリンタ・サーバの構築の記事でこのプリンタを使用している。USB接続でも問題なかったようなので楽に行けそうだ。

まずはインク買ってこなきゃ。今なら年末の売れ残りの商品が安く買えるかも!?

対応するインクはHPインクジェットプリンタ インクサプライ対応表(PDF)によるとhp78 プリンタカートリッジカラー とhp45 プリンタカートリッジ黒だ。

追記:黒インク(hp45)が3600円もしたので買うのやめた。ちなみにBJ-F300の黒インクは990円。

最終更新時刻: 2008年10月28日

[wish] スピーカー / ジュンク堂書店

スピーカー

液晶(EIZO FlexScan L557)内蔵スピーカーはやっぱり音楽再生には向かない。前から思ってたけど今日あらためてそう感じた。ちょっと音量を上げるとすぐに割れる。

というわけでスピーカーを買おう。部屋全体で聴くことは無い、音場は机の周囲程度でいいので小さいスピーカーでかまわない。

BOSEの小ぶりで安いやつを探そう。

ジュンク堂書店

初めてジュンク堂書店に行ってきた。図書館みたいなイメージ。専門書が豊富という評判どおりコンピュータ関係の本もマイナーなものまで取り揃えられていた。今度ゆっくり物色しに行こう。

最終更新時刻: 2008年10月22日

[buy] 3Com Megahertz 10/100 LAN PC カード 3CCFE574BT / pMachine / リンクに下線を表示させた / Googleから締め出される(3)

3Com Megahertz 10/100 LAN PC カード 3CCFE574BT

現在予備WEBサーバになっているSOTECのノートに取り付けるために購入。まだ手元には届いていない。

CardBusではなく16ビットPCカードなのでパフォーマンス的にはともかく、Linuxとの相性を優先した。

3Comの商品紹介ページ

MaoさんのBlog 2003-7-18 夢見るThinkPad 600Eによれば

旦那様の3com「3CCFE574BT」に差し替えてみたらおもしろいように
サクサクになりました。

ということでLinuxでも動くらしい。みんな難なく動くせいか動作報告は意外と少なかった。

pMachine

さっきのMaoさんのBlogが見たことの無いCMSだったので気になってたら、pMachineというものらしい。

PHPで書かれているらしいのでちょっと興味がある。

リンクに下線を表示させた

スタイルシートを弄って下線を表示させてみた。あとTahomaフォントにした。

Googleから締め出される(3)

 ((<"void GraphicWizardsLair( void ); //"|URL:http://www.otsune.com/diary/2004/01/18.html#200401186>))より

どうやら世間的な流れのよう。うちのサイトにもクレームが来てたってことか・・・?!

ちなみに、僕も先日Googleに以下のようなメールを出していたんだけど

先日から弊社の運営している番組情報サイト(http://tv.starcat.co.jp/)が
Googleで検索されなくなったのでメールさせていただきました。
再度登録されることはありますでしょうか?
また、削除された理由等あればお教えいただければ幸いです。

驚くことにちゃんと返答が来た。しかも翌日。多分中の人が書いたと思われる部分を抜粋すると

Googleへご連絡いただき、ありがとうございました。
URLを検索したところ、お客様のサイトが現在もGoogleインデックスに掲載されている
ことを確認しました。下記のURLをご参照ください。
http://www.google.co.jp/search?q=http%3A%2F%2F(長いので省略)

あとはお決まりのテンプレートと思われるものが続く。「当社のインデックス内の結果は、検索結果の質と内容の向上を目的として、継続的な自動化されたプロセスに基づいて・・・(以下略)」

で、「下記のURL」を見てみると、http://www.starcat.co.jp/のインデックスじゃん!

これじゃなくてhttp://tv.starcat.co.jp削除されたんですよー。と再度メールを出す。

すると、

Googleへ再度ご連絡いただき、ありがとうございました。先日の返信が、お問い合わせ
のURLに関する情報を含むものでなかったことをお詫び申し上げます。
先日の返信でも申し上げたように、Googleのインデックスは、検索結果の改善を目的と
した継続的な自動化されたプロセスに基づいて定期的に変更されます。お気づきになっ
た変更は、この意図を実行した結果です。
また、Google では 10億以上のページをインデックスしているものの、サイトのすべて
のページが、インデックスされる、または、常にインデックスに含まれるという保証は
ありません。しかし現在、クロールするページの数を増やし、インデックスにより多く
のページを含められるよう改善に努めておりますので、どうぞご理解の程をよろしくお
願い申し上げます。
インデックスに関する詳細は、以下のページよりご覧ください。
http://www.google.com/technology/index.html .
今後とも Google をどうぞよろしくお願いいたします。
最終更新時刻: 2008年12月25日

LinuxでITVC16-STVLP / Debian GNU/Linux で利用する GNU GRUB / bq.rbを入れた / [buy]UPS OMRON BX50XFV / [wish]Asus Terminator シリーズ

LinuxでITVC16-STVLP

linuxwiki@ぱ研 LinuxでITVC16-STVLP

そういえば確か、今月のSoftware DesignにLinuxで録画する記事が載ってた。ちなみに今月号はその記事以外に今すぐ必要な記事が無かったので未購入。

目次によると、「Linuxでつくるパーソナルビデオサーバ〜OpenPVSプレビュー」という一般記事だった。

と思ったら、このOpenPVSは上記ぱ研の籠屋さんが開発したものだった。日記によると次号のSD誌にも記事が載るらしい。やっぱり今月も買っとこうかな。

追記: /.の記事 自由を手にしたビデオサーバ『OpenPVS』

Debian GNU/Linux で利用する GNU GRUB

Debian GNU/Linux で利用する GNU GRUB

wakatonoの戯れメモより

bq.rbを入れた

今までは惰性で<pre>使ってたけど引用はやっぱり<blockquote>でしょ。ということでbq.rbを入れた。

追記: RDの引用を使うことにしたのではずした。bq.rbは引用元サイトにもリンクが張られて便利だった。(2004-1-22)

ところでRDそのものには引用の構文はあるのかな?と思ってちらっと検索して見つかったのが

>引用のテスト

・・・駄目らしい

Journal InTime - 2003-12-22 tDiaryの引用

RDスタイルの説明にあった!

# こんな感じ
--- <blockquote>
    この部分は引用です
   この部分は引用です

[buy]市民プールの回数券

前のが切れたので購入

システム管理者は人力検索サイトの中の人じゃありません

はてなダ ヨーンから

--- <blockquote> 僕は何故か会社で導入した PC のセットアップとかする機会が多いのですが、ある程度 PC に慣れている人のマシンには google ツールバーを、そうでもない人のマシンはそれプラス IE の Home Page を google にして引渡してます。なんか探す時は、ここに調べたいものを入力して下さいねとか言いながら。

これ実践しよっと(ていうか一台二台やった覚えが・・・)。システム管理者じゃないけど僕も何故かセットアップとかする機会がある。

void GraphicWizardsLair( void ); //より

UPS OMRON BX50XFV

OMRON - BX50XFV

Asus Terminator シリーズ

Asus Terminator 活用メモより

スペックや内容的にはごくありきたりのベアボーンキットのように感じてしまいますが,ショップで売り切れが続出するのには理由があります.

  • ファンレス電源を搭載
  • 小型で奥行きも取らないケース
  • 専用M/Bを使用し,基本的に必要な機能は全てオンボードで搭載
  • 通常のサイズの PCI スロットを 2本持ち,拡張性もまずまず
  • (P4 533Aでは,PCI*1,AGP*1)
  • 5インチベイ2つ,3.5インチベイ2つ(1つはシャドウベイ)を持つ
最終更新時刻: 2008年09月01日

Webサービスに対する漠然としたイメージ / bkbsfilter / Services for UNIX 3.5 日本語版リリース

Webサービスに対する漠然としたイメージ

まずは検索に頼らず書いてみよう

郵便番号を渡すと住所を返すサービスを例とする。(すでに存在してたはず)

サービスを提供する側は

http://www.mylab.jp/postal?zip=1050001

のようなアクセスがあった場合に

東京都港区虎ノ門

を返す。エラーまたは見つからなければ空文字列を返す。

このやり取りをXMLを使って標準化したのがXMLRPC?そこから発展あるいは派生したのがSOAP?WSDLはそのやり取りを定義するもの?

bkbsfilter

しののんだいあり〜 bkbsfilterから

Becky! Ver.2(以下、Becky!)でSPAMを自動的に振り分けするプラグインです。Rubyで書かれていて、Becky!でRubyスクリプトを走らせるプラグインであるBeckrbの上で走ります。

つまりこう。

Becky! <- Beckrb <- Ruby <- bkbsfilter

A DAY IN THE LIFEより

Services for UNIX 3.5 日本語版リリース

Services for UNIX 3.5 日本語版のダウンロードができるようになった

あおきにっきより

最終更新時刻: 2008年07月30日

iモード端末向け外付けキーボード / [todo][server]CVSサーバ立てる / [server]XNameに登録した / [tDiary]recent_trackback3.rb - 最近のトラックバック / [server]3Com Megahertz 10/100 LAN PC カード 3CCFE574BT(2) / [tDiary]RDスタイルの脚注 / QuickMLのアーカイバ・エージェント / [memo]Space Saver Keyboard II USB のドライバ / [Web制作]Googleから締め出される(4)

CVSサーバ立てる

XNameに登録した

mylab.jpのセカンダリDNSに、今まではThe Public DNS Serviceを利用していたが、Xnameに変更した。

recent_trackback3.rb - 最近のトラックバック

recent_trackback3.rbをコミット - 今日のなんでやねん 2004-01-21

ただの日記より

最新のプラグイン集からrecent_trackback3.rbを入れた。

追記:coreも最新版が必要だったので一旦はずした。

3Com Megahertz 10/100 LAN PC カード 3CCFE574BT(2)

手元に届いたので早速SOTEC WinBookに挿入。あっさり認識。体感でスピードアップを確認。

RDスタイルの脚注

((-これは脚注です-))

脚注のテスト((-これは脚注です-))

footnote.rbは要る。

QuickMLのアーカイバ・エージェント

http://mailarc.namazu.org/htmlmail/quickml-users/344

Space Saver Keyboard II USB のドライバ

Files for the TrackPoint USB Keyboard - IBM

Googleから締め出される(4)

TomさんからのツッコミによるとGoogle AdSense シミュレータでtv.starcat.co.jp検索すると関連付けされたアドが出ないとのこと。やっぱキャッシュされてないんですねー。

でも、アドセンスに申し込んでGoogleがどう反応するのかも興味あります。

  • 許可が下りない
  • 許可は下りるがキャッシュされないまま
  • 再度クロールに来てキャッシュされる

2番目かな・・・1番目だとしても理由が説明されるならやる意味がある。3番目なら言う事なし。

3になる可能性高いのはアドワーズかな、仮にも広告主になるわけだし。

最終更新時刻: 2008年11月03日

[memo] XML-RPCについてのメモ / RESTアーキティクチャ / iptablesでSYN flood アタックを防ぐ / Google AdSenseに申し込んだ / Debian woodyをkernel 2.6にするメモ / はてなダイアリーブック / Debian + RAID / UPS OMRON BX50XFV 到着

XML-RPCについてのメモ

PHPでXML-RPCを使う場合は最近ではPEARのライブラリを使用するのが良いらしい。入っているのか確認してみた。

# pear list
Installed packages:
===================
Package        Version  State
Archive_Tar    1.1      stable
Console_Getopt 1.0      stable
DB             1.5.0RC2 stable
HTTP           1.2.1    stable
Mail           1.1.1    stable
Net_SMTP       1.2.3    stable
Net_Socket     1.0.1    stable
PEAR           1.3b3    beta
XML_Parser     1.0.1    stable
XML_RPC        1.0.4    stable

ちゃんと入ってた。じゃ、これ使おう。

RESTアーキティクチャ

Amazon Web Searvice で使われてるのはSOAPとこれ。XML-RPCだと勘違いしてた。XML-RPCはリクエストもXMLになる。

トラックバック技術仕様書によるとトラックバックもRESTを採用している。

iptablesでSYN flood アタックを防ぐ

ずんWiki - IDS から

# for SYN-FLOOD
iptables -N syn-flood
iptables -A INPUT -p tcp --syn -j syn-flood
iptables -A syn-flood -m limit --limit 1/s --limit-burst 100 -j RETURN
iptables -A syn-flood -j DROP
# for PING-OF-DEATH
iptables -N ping-death
iptables -A INPUT -p icmp --icmp-type echo-request -j ping-death
iptables -A ping-death -m limit --limit 1/sec --limit-burst 10 -j RETURN
iptables -A ping-death -j DROP

Google AdSenseに申し込んだ

会社名欄が必須事項になっていたが、名前と同じものを入力しておいた。これで良いのか調べてみた。

ヤキューウェブ別館 Google AdSense に対する椎名まおさんのコメントより引用

15日の昼過ぎにGoogleに問い合わせていたのですが、ようやく返事が来ました。

> 会社名の欄についてですが、個人で申し込まれる場合は再度氏名を入力されるか、「Individual」などと入力していただければ問題ございません。

良かったらしい。

Debian woodyをkernel 2.6にするメモ

Debian woodyをkernel 2.6にするメモから

Debian GNU/Linux スレッドテンプレ でDebian Backportsというプロジェクト発見。とりあえずここので必要そうなものは揃いそうだったので、Debian Backportsを利用することにした。

このBackportsって見覚えあるなーと思ったら、先日のカーネルをバージョンアップ(2.4.24)で使ったカーネルイメージもDebian Backportsプロジェクトのものでした。

はてなダイアリーブック

はてなダイアリーブック

はてなでは、ご自分の日記を書籍にできる「はてなダイア リーブック」作成サービス(有料)を開始しました。

「はてなダイアリーブック」は、本にしたい日記の期間や表紙の色などを指定 するだけで、ご自分のはてなダイアリーを一冊から本にすることができます。

形として残しておきたいときに便利なサービスだと思う。日記フォーマットをLaTeX経由でPDFに変換してるんだろうか?

Debian + RAID

ふむWiki Debian + RAID-1から

/ ではないパーティションを RAID-1 化するのはひろのぶ氏のメモ のように簡単である

UPS OMRON BX50XFV 到着

先日注文したBX50XFVが到着した。昨日の朝もブレーカーが落ちたのでこれで少しは安心できる。

最終更新時刻: 2008年12月10日

Space Saver Keyboard II USB のドライバ(2) / Webアプリから2行でExcelファイルを出力する方法 - セルに改行がある場合 / [buy]BOSE MediaMate II

Space Saver Keyboard II USB のドライバ(2)

20040122#p08のドライバを入れたらタスクトレイにトラックポイントのアイコンが追加された。

タスクトレイ

Webアプリから2行でExcelファイルを出力する方法 - セルに改行がある場合

はてなダイアリー - 日々うろ覚え記から

セルに改行がある場合は追加として、HTML ヘッダに

<STYLE>br{mso-data-placement:same-cell;}</STYLE>

を付けると、セル改行ができるようになるので便利です。( セル内の改行は BR タグで表現するのだが、デフォルトだと「改行でセルが縦に二つに分割されてしまう」ので)

BOSE MediaMate II

BOSE MediaMate II マルチメディア・スピーカーシステム ブラック

2系統の入力があり、しかもミキシング可能なのでPCとテレビの両方を繋ぐ予定。

最終更新時刻: 2008年11月11日

[wish] 三菱電機 アイメイト / [wish]デジカメ / [todo]情報処理技術者試験申し込み / w3ml / トラックバック / Webサービスのセキュリティについて覚書

三菱電機 アイメイト

プロ用デスクスタンド。通販生活2004年春号より。スタンド式とクランプ式がある。クランプ式のほうが値段が高いが、机のスペースを有効に使える。

デジカメ

情報処理技術者試験申し込み

w3ml

http://www.tmtm.org/ruby/w3ml/

メーリングリストのログを Web で見るためのツールです。HTML 4.0 にで きるだけ準拠しているつもりです。スタイルシートを使用しているので、 IE や Mozilla で美しく見ることができます。各メッセージにスレッドツ リーも表示されます。

Webサービスのセキュリティについて覚書

多分セキュリティに関する5W1Hみたいな資料があるんだろうな。

バランスよく

セキュアな通信経路、アプリケーション、OS・・・など。どれが抜けても意味が無い。正面玄関の鍵がかかっていても裏口や窓を閉め忘れたら侵入されるのと一緒。「頭隠して尻隠さず。」になってるサイトがある。お尻が危ないですよ!

なにを守るのか

守りたいものを絞る。なにかわからんけど「セキュリティを高めとけ」ってのはだめ。守るべき範囲は明確に。お互いの認識が一緒だと思ったらだめ。

守るものの価値

1万円の指輪を守るために100万円の金庫が必要か?逆に100万円の指輪に1万円の金庫でいいのか?情報の価値、それが漏れたときの損失。金額にするのは難しいけれど。

最終更新時刻: 2011年06月09日

Safariの文字化け / FPDF - PDFファイルを作成するための PHP クラス / XML-RPCについてのメモ(2) / BOSE Media Mate II 到着 / XML-RPCについてのメモ(3)

Safariの文字化け

Safariから送信されたフォームデータが文字化けしていた。全角部分が???になっている。半角は大丈夫。

Safariでフォーム送信が「???」に化ける問題と対処法

FPDF - PDFファイルを作成するための PHP クラス

今のところ必要ないけど、将来的に必要になりそう。

XML-RPCについてのメモ(2)

SOAPに比べてXML-RPCの情報が少ない気がする。シンプルだからそんなに必要ではないんだろうけど。PEARのXML_RPCのサンプルコードがもっと欲しい。特にサーバ側。

とXML_RPCのソース、XML-RPCの仕様書を見ながら組んでみよう。

どうでもいいけどXML_RPCってグローバル変数使いまくってる。定数でいいような気がするんだけど。これが最近のPEARコーディングの流行なのかな?(2002年に書かれたコードだから最近ってわけでもないか)

SSLを使う場合はCURL関数が有効になっている必要がある。(--with-curl)

BOSE Media Mate II 到着

BOSE MediaMate II マルチメディア・スピーカーシステム ブラック

低音が良く出る。このサイズ、価格でこの音。いい買い物でした。衝動買いだったけど。

XML-RPCについてのメモ(3)

去年の夏までASCIIしか通さない仕様だった。実装によっては通るものもあったみたいだけど。

PEARのXML_RPCのソースを眺めてサーバとクライアントの雛形を作った。

日本語の扱いが面倒。PHPのXMLパーサが日本語をUTF-8しか通さないからだ。いっそソースもUTF-8で書こうか。それともXML_RPCを継承して変換ルーチン入れようか。

Shift-JISのHTMLからデータを送って、EUC-JPのPHPで受け取り、UTF-8に変換してXML-RPCメッセージを送信。だめだ。絶対どっかで化ける。

SOAPの方が資料やライブラリがあるんじゃないかと思った。が、PHPに限って言えばどっちもどっちな気がした。

最終更新時刻: 2006年09月20日

Google AdSense 導入 / 絵日記プラグイン機能追加版 / 正規表現で日本語にマッチ / bk1にTrackBack / 3Com Megahertz 10/100 LAN PC カード 3CCFE574BT(2) / PCカードのエラーメッセージ / サイトの掃除 / PEAR XML_RPC

Google AdSense 導入

広告という感覚はあまりない。試してみたかったというのが第一。飽きたら外すかも。

絵日記プラグイン機能追加版

TrialHiki - 絵日記プラグイン機能追加版

tDiaryのプラグインにやたら詳しいお方に「絵日記プラグインみたいなので画像押したら大きい画像開くようなプラグインない?」って聞いたらあっさり答えが返ってきた。サンクス。

正規表現で日本語にマッチ

日本語に絡むUnicodeブロックとスクリプト(正規表現)から

<?php
$text = '漢字カナ混じりの文章をinputします';  // EUC-JP
$pattern = '/(
    [\x21-\x7E]+                 | # Latin-1
   #(?:\x8E[\xA6-\xDF])+         | # HankakuKatakana
    (?:\xA4[\xA1-\xF3])+         | # Hiragana
    (?:\xA5[\xA1-\xF6])+         | # Katakana
    (?:[\xB0-\xF4][\x00-\xFF])+    # Kanji
)/x';

if (preg_match_all($pattern, $text, $capture)) {
    echo join("\n", $capture[1]), "\n";
}
?>

実行結果

漢字
カナ
混
じりの
ビミョー
な
文章
を
input
します

UNICODEスクリプトというのは便利だと思うんだけど

Unicodeスクリプトまでサポートしている正規表現エンジンはPerlのぐらい

うーん、残念。

bk1にTrackBack

ただの日記より

急募、ウェイトレス - smashmedia

オンライン書店ビーケーワンの中の人が書いてるBlog。

ファミレスで食事が出てくるのが遅い時、その理由は大きくふたつあって、ひとつは料理そのもののできるのが遅い場合。もうひとつはフロアの店員が少なくてせっかく料理はできてるのにお客さまのテーブルまで運べない場合。 今のbk1は後者の場合です。こういうときはウェイトレスにあたるwebサーバを増設するしかないということです。

人ごととは思えない。

3Com Megahertz 10/100 LAN PC カード 3CCFE574BT(2)

イチエさんのつっこみを見て、そういえば3COMのカードも何かメッセージが出てたな。と思い出した。

同じようなメッセージだと思ったんだけど全然思い違いで

vspurious 8259A interrupt: IRQ7.

というメッセージ。頻繁に出るわけでもなく、通信はできてるのでやっぱりもう少し見てみぬふり。

PCカードのエラーメッセージ

改めてイチエさんのつっこみから

debian-users:05113に似たような報告があって、debian-users:05140で解決してますが。この報告では

サウンドブラスターのIOポートとネットワークカードのIOポートが衝突していたのが原因でした。

という結論になってますね。

サウンドブラスターでないとしても何かとIRQが衝突してる可能性が高いので、IRQの割り当てやPnPに関する部分をいじってみるのがいいみたいです。

って、イチエさんがメッセで言ってたのと同じような結論になってしまいました。

サイトの掃除

ストイックなまでにシンプル。いや、もっと削れるはず。

PEAR XML_RPC

レスポンスの文字が化ける症状ではまったのが昨日。

今日原因がわかった。.htaccessに書いていた

php_flag mbstring.encoding_translation On
php_value output_handler "mb_output_handler"
php_value mbstring.http_output "SJIS"
php_value mbstring.http_input "SJIS,UTF-8"

これらが原因。特にmbstring.http_output。XML-RPCサーバではUTF-8を出力しなきゃいけないのにこの指定によってSJISに変換されてしまっていた。かろうじてインプットは自動判別ですり抜けていた。

XML-RPCクライアントのスクリプトと同じディレクトリに置いていたが切り離して別ディレクトリに設置した。

最終更新時刻: 2009年01月16日

khtml2png / [work]目標 / Webサービスのメッセージ交換方法

khtml2png

khtml2png

WebページをPNG化してくれるコマンド。Xが必要。周りにXをインストールしたマシンが無い・・・

目標

数字にこだわる。それはわかる。僕に対する数字(報酬)はどうなの?という疑問。

数字上げました、責任増えました、給料上がりません。数字下がりました、文句言われました。ではモチベーションが下がる。

Webサービスのメッセージ交換方法

REST/XML-RPC/SOAPを比較。ただしRESTはアーキティクチャモデルなのでちょっと違うんだけど。

誤解があるだろうけどこんなイメージ

  • REST
    • メッセージの送信データはPOSTやGETで値を渡す
    • 受信データはXML
  • XML-RPC
    • 送信も受信もXML
    • シンプル
  • SOAP
    • 送信も受信もXML
    • シンプルとはいい難い
    • WSDLとかUDDIが絡んできてまだよくわからない

Webサービスについて非常にわかりやすい文書を発見。

W3CによるWebサービスの定義もある。じっくり読んでみよう。

最終更新時刻: 2008年08月21日

WORM_MIMAIL.Rを駆除 / MS VISIO 2002 + DocuColor 1250 CP で文字化け / tDiaryをスナップショット版に入れ替えた / HikiをCVS版に入れ替えた / hiki-mode

WORM_MIMAIL.Rを駆除

感染した人がいたので、トレンドマイクロのダメージクリーンナップサービスで該当ファイルとレジストリの削除。

MS VISIO 2002 + DocuColor 1250 CP で文字化け

何度印刷しても日本語が化ける。VISIOをSP1にしてもだめだったが、プリンタドライバを最新のものに入れ替えたら直った。

tDiaryをスナップショット版に入れ替えた

「最近のトラックバック」プラグインを使いたかったので最新版にした。

HikiをCVS版に入れ替えた

スタイルをRD+に変更した。次はCVSとの連携をしたい。トラックバックプラグインは使えないかなー

hiki-mode

hiki-mode.elのxyzzy版があったらいいな・・・と思ったいたら他にもそう思ってる人がいた。

最終更新時刻: 2008年11月15日

Webサービスとは / Webサービスとは(2) / XML-RPCの実際 / 普通のHTTPリクエスト/レスポンスってどんなんだっけ? / cvs-mode for xyzzy / Webページサムネイル画像作成ツール / 2ch管理人 ひろゆき氏のブログ / Apacheの自動起動の設定(RedHat系) / ブラウザの「お気に入り」 / [memo]URL from IEのお気に入り

Webサービスとは

要するにWebサーバが情報を提供する相手が「人」か「アプリケーション」かというだけのような気がする。

いや、ちょっと違うか。今までも「ブラウザ」という固定の「アプリケーション」にHTML(XML) なりJPGなりを提供してたんだから。でも結局は人が見るためのデータだ。

WebサービスはHTMLやJPGの代わりにXMLでデータを提供する((-実際データ形式には依存しないと思うけど-))。それだけなら「index.xml」を置けば出来上がりなんだけど、常に同じデータしか返してこないWebサービスにあんまり意味は無い。

アプリケーションがデータを送り、Webサーバはそのデータに基づいたデータを返す。これはWebサービスに限ったことではなく、ブラウザでWebを見るときにも行っていることだ。違うのはそのデータがXMLか否か。

たとえば検索エンジンを利用するとき、検索窓に文字を入力している。ブラウザは入力された文字をWebサーバに送り、その文字を含むページの探しリストをHTMLにしてブラウザに返す。

これをWebサービス化したのがGoogleが始めた「Google Web API」だ。

このWebサービスを利用するアプリケーションは、検索したい文字をXMLとしてGoogleのWebサービス用のURLに送信する。Googleは受け取った文字を含むページのリストをXMLデータにしてアプリケーションに返す。

アプリケーションはそれをGoogleと同じようにHTMLにしてもいいし、ファイルに保存して終了してもいい。どう利用するかはアプリケーションを作る人次第。

プログラム経験者には「Webを使った関数呼び出し」と説明すると伝わるかも(抽象的過ぎて混乱するか・・・)。WebサーバにURLという関数名と引数を渡して返り値をもらうのだ。

多分Webサービスはもっと壮大なものだと思うけど、僕が使うレベルではこの程度の理解で困らないように思う。

Webサービスとは(2)

しつこいくらいにXML、XMLと書いたが、実はアプリケーションからはXMLを意識する必要は無い。HTTPのプロトコルしらなくてもCGIスクリプト書けるのと一緒。PHPやPerlなどはWebサービス用のライブラリがありXMLはその後ろに隠れて自分の書くコードからは見えない。

XML-RPCの実際

XML-RPC仕様書邦訳によればリクエスト、レスポンスはそれぞれ以下のような構造。

リクエスト

POST /RPC2 HTTP/1.0
User-Agent: Frontier/5.1.2 (WinNT)
Host: betty.userland.com
Content-Type: text/xml
Content-length: 181

<?xml version="1.0"?>
<methodCall>
   <methodName>examples.getStateName</methodName>
   <params>
      <param>
         <value><i4>41</i4></value>
      </param>
   </params>
</methodCall>

レスポンス

HTTP/1.1 200 OK
Connection: close
Content-Length: 158
Content-Type: text/xml
Date: Fri, 17 Jul 1998 19:55:08 GMT
Server: UserLand Frontier/5.1.2-WinNT

<?xml version="1.0"?>
<methodResponse>
   <params>
      <param>
         <value><string>South Dakota</string></value>
      </param>
   </params>
</methodResponse>

ごちゃごちゃ考えるより、この実例をひとつ見るほうがよっぽどわかりやすかった。

普通のHTTPリクエスト/レスポンスってどんなんだっけ?

GETは簡単だけど良く考えたらPOSTのほうはあまり考えたことがなかった。考えなくてもPHPはうまくやってくれてるし。

まずはGETリクエスト

GET / HTTP/1.0

レスポンスはリクエストがGETでもPOSTでも同じ(余計なヘッダは省きます)

HTTP/1.1 200 OK
Content-Type: text/html
Date: Fri, 17 Jul 1998 19:55:08 GMT

<html>
<head>
<title>Welcome mylab.jp!</title>
</head>
<body>
mylab.jpへようこそ。
</body>
</html>

フォームなどから入力する場合で、POSTメソッドを使った場合のリクエストはフォームのエンコード方法にmultipart/form-dataや、application/x-www-form-urlencodedがあるらしい。名前から察するに前者はマルチパートのメールみたいにバウンダリで値を区切ったりするんだろう。後者はGETと同様に変数=値&変数=値・・・という感じだろうか。

HTML 4.01仕様書 邦訳 フォームのMIMEタイプ で答えあわせをしてみると、FORM要素の enctype属性に指定できる値はデフォルトのapplication/x-www-form-urlencodedとmultipart/form-dataの2つがあり、一般的にはURLエンコードを使うがファイルを送信する場合には後者のマルチパート方式を使わなければならない。

application/x-www-form-urlencodedを使うPOSTリクエスト

multipart/form-dataを使うPOSTリクエスト

参考サイト

cvs-mode for xyzzy

Memo-cvs-modeを使う

Webページサムネイル画像作成ツール

 Windows
 Windows

LinuxでMozillaを使う方法 http://blog.bulknews.net/mt/archives/000494.htmlより

#!/bin/bash
mozilla -geometry 800x800 &
PID=$!
sleep 3;
ID=`xwininfo -name "Mozilla" -int | perl -e 'while(<>) {
 if   (/Window id: ([0-9]+)/) { print $1; } }'`
mozilla -remote openURL\(http://$1\)
sleep 3;
import -window $ID -silent $1.jpg
kill $PID

http://www.persistent.org/hiki/hiki.cgi?%A4%BF%A4%E0%A4%E9から

2ch管理人 ひろゆき氏のブログ

元祖しゃちょう日記

ココログのページって始めて見た。ニフティ社長のブログもある。

Apacheの自動起動の設定(RedHat系)

http://m9841.info/server/apache2.htmlより

付属の apachectl を利用します.
# cp /usr/local/apache2/bin/apachectl /etc/init.d/apache2
コピーした apache2 を編集します.
# vi /etc/init.d/apache2
25行目くらいのコメントが終わった所で以下を追加します.
#chkconfig: - 85 15
#description: apache2.0
chkconfig に登録します
# chkconfig --add apache2
# chkconfig --level 345 apache2 on
RPM とかで他の httpd がインストールされているときは,
# chkconfig --level 345 httpd off
とかして次回から起動時に自動起動しないようにしておきます.

ブラウザの「お気に入り」

昔は巡回するページをお気に入りに入れていた。それがWWWCを使うようになって巡回にはWWWCを使うようになった。今はそれがアンテナだったりRSSリーダーと併用になっている。

で、ブラウザのお気に入りは調べ物中に有用だと思ったページを登録している。

今その整理中なのだ。お気に入りに登録されていたページを日記に移す作業。

というわけで、いつもより多く更新しております。

最終更新時刻: 2006年09月13日