2007-11-07 サーバの設定マダー?
ヽ(´ロ`)ノ<まだでーす
◆ [情報][メモ] 「ダビング10」はコピーワンスの緩和か
面白かったのでメモっておく。
◆ [情報] グーグル携帯OSに参入 NTTドコモなど世界34社が連合
ちょっと休んでる間にググるさんが乗り出してきました。
というわけで、面白そうなのでメモっとく。
関連:Google OSは携帯電話から - 「Android」登場!!
というか、SBMh(回線が切断されました
◆ [情報] 虎の穴、ダウンロードストア開設へ-同人作品をデジタル販売(いつか見上げた、あの青空の下でさん所から
マジッスカ!
といっても、「サークルカード」の実質10%引きは効くのだろうか。それが謎だ。
◆ [ネタ][情報] アニメ化コミック、売れる売れないの分岐点
面白かったのでー
◆ [ネタ][情報] 「正解はCMのあと」「最新情報はこのあとすぐ」などテレビの山場CMは逆効果 …視聴者の86%が「不愉快」
そりゃ見てる側からすりゃーなー。
◆ [情報] 東京大学、「光の粒」を使ってHDDの容量を5倍以上にする技術を開発
HDDはまだしばらくは安泰っぽいですなぁ…。
◆ [日記][tDiary] RSSまわりいじくり。
日記の内容、全てをRSSから取得できないようにしてみました。
なんか、RSSの情報からミラーサイト(?)みたいなのが結構作られていたので。
不評だったら戻します(笑)
◆ [日記][FreeBSD] webalizer設定中
LogFormat "%h %l %u %t \"%m http://%{Host}i%U %H\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" analyzed
こんな行をhttpd.confに書き忘れていたそんな罠。
あと、あちこちでパス名が間違っていた(オリジナルを元にコピペしたから大々的に間違っていた(笑))そんな罠
apacheの設定で、auth_digest_moduleが有効になっていなかったそんな罠
webalizerのLogFileとOutputDirのパスがまちがっとる、そんな罠。
で、そこまで設定してwebanaliserがちゃんと動いた事を確認。
今日はここまで。
◆ [日記][FreeBSD] rubyをインストールするよー
/usr/ports/lang/ruby18でmake install
IPv6サポートは外して(つかkernelからも外してあるしな…)、GCPATCHだけ選択してコンパイルー
なんかnkfという文字が流れていった。
なんとなくついでに/usr/ports/japanise/nkfでmake install
よし終わり。
◆ [日記][Unix] 知り合いの所がコメントスパム爆撃を喰らっている
重くてむかついたので、勝手に.htaccessで制限する(笑)
こんな感じ
<Files mt-comments.cgi>
<Limit POST HEAD>
SetEnvIf REFERER "^URL" ref
order deny,allow
deny from all
allow from env=ref
</Limit>
</Files>
一気に軽くなった(笑)
◆ [ネタ] ニコニコ動画(RC2)‐【自重】勢いで鏡音リンを描いて見た【できなかった】
早すぎだよ!!(笑)
◆ [日記][FreeBSD][tDiary] 新サーバに仮設置&ベンチマークテスト。
現在のサーバとパス名などを同じに設定したので、コピーするだけで動く様になった。偶然UIDも一緒だったのでchownも不要。
で、設置したサーバで色々調べてみる。とりあえずは開いて……
403 Forbidden
一瞬意味が分からなかった(笑)そういえば、デフォルトで/はDeny from allがかかってましたな。
というわけで、
Order allow,deny
Allow from all
とこんな感じで.htaccessを置く。おぉ、ちゃんと動いた。
とりあえず、/usr/ports/textproc/ruby-erbscanを入れずにテスト
300秒で492回ほど反応が返ってきた。まずまずだと思う。
まぁ……ブラウザで見ると9秒くらい待たされるわけですが(笑)
ちなみに、その時のプロセスリストはギャグ以外の何物でもない。
予想通りlockfで待ってるプロセスが大量にいる状態(笑)
上記結果は複数のページを読んだ時の結果なので、1ページだけでもう一回ベンチマークしてみる。
……CPUが30%も余ってすかすかだ。かといってHDD書き込みが無茶というわけでもない。いや、かなり無茶な値は出てるのだが、この間計った時と比べるとまだ余裕があるはずなのに。というか、CPU占有率が70%より増えません。さすがlockfの王者(笑)
むむぅ、やっぱりディスクがボトルネックか?lockfやってるやつが一番CPUを喰っているとかつっこみどころは満載。
結果、300秒で325回正常終了。149回、Internal Server Error。おいおい。
次、ruby-erbscanをインストールしてテストする。
ブラウザで見ると30秒ほど待たされる。
結果、300秒で520回正常終了。87回、Internal Server Error。
おぉ、確かに早くなっている。標準設定でも1分あたり104回ほどは反応を返せるのか。早いなー。
ボトルネックを調べるために、一番のネックになっているリファー記録を外してみる。
とりあえず、~/tdiary/defaultio.rbからrestore_refererとstore_refererを呼んでる場所を#でコメントアウト。
再度テスト。
ブラウザで見ると22秒ほど待たされる。CPU占有率はちょっとあがって80%位。
結果、300秒で875回正常終了。81回、Internal Server Error。
それよか気になるのがディスクIOが減ってない……やっぱりディスクIOネックか!
どうやら30MByte/sec当たりで頭打ちになってるっぽい。むむ?
/dev/zeroから書き込むと80M位出るのに……。syncでも取っているのだろうか?
/dev/randamから書き出した1Gのファイルをddでコピってみた。それでもだいたい50M位は出ている(読み+書きで半減してる?)。やっぱり30Mの謎は残る。
ん? ……systatって、HDD読み込み速度はカウントしてない?
どっちにしろ、tDiaryが頭悪すぎる事がよく分かった(涙
ちなみに……今のサーバだと、3分間で、35回、Internal Server Error 19回。1分当たり……12回……・゜・(ノД`)・゜・
◆ [日記][FreeBSD] 突如WebDAVを入れる事になったのでその設定メモ
ちなみに、新サーバではない。
とりあえず、WebDAV用のディレクトリを用意。仮に/webdavとする(以下、明記しない限り/webdavディレクトリでの操作)。
htdocsの置き場を作る。mkdir htdocs
なんか、Apache権限でファイルを作るらしいのでchgrp www htdocs; chmod 770 htdocsして書けるようにしてやる。
あと、なんかロック用のディレクトリがいるらしいのでmkdir lock; chgrp www lock; chmod 770 lockとして作る。なんかファイルがいるらしいのでtouch lock/file; chgrp www lock/file; chmod 660 lock/fileとしてファイルを作る。
んで、認証用のファイルを入れるためにmkdir htpasswd;chgrp www htpasswd; chmod 750 htpasswdとして設定。ついでなのでhtpasswd -c htpasswd/root ユーザ名 とやって、/webdav/htpasswd/rootを作っておく。ついでにchmod 640 htpasswd/root; chgrp www htpasswd/rootとしておく。
あと、前回の反省(みんながwebdavの設定を解放してくれないので、webdavを求めてむやみやたらにhttpにアクセスが来る)から、一時的なドメイン(temp.example.comとします)を作る。
んで、httpd.confで次の行を追加する
LoadModule dav_module libexec/apache2/mod_dav.so
LoadModule dav_fs_module libexec/apache2/mod_dav_fs.so
コメント化されてる場合はコメントを外しちゃえばOK。
んでもって、webdav用のlockDBを設定。これもhttpd.confに書く
DavLockDB /webdav/lock/file
最後にバーチャルサーバの設定。
<VirtualHost *>
ServerAdmin めあど
DocumentRoot /webdav/htdocs
ServerName temp.example.com
</VirtualHost>
<Directory /webdav/htdocs>
Options Indexes
AuthType Basic
AuthName "Webdav Directory"
AuthUserFile "/webdav/htpasswd/root"
Require valid-user
Dav on
</Directory>
こんな感じで書いた後、apachectl restart。何故かしらんが、Options Indexesを付けないとうまく動かない模様。
マイネットワーク→ネットワークプレースを追加 で、http://temp.example.com/を指定。ID/PASSを聞かれるので、さっきhtpasswdで設定した奴を入れる。どういう名前にするか聞かれるので、適当に入れる。
最初、
The locks could not be queried for verification against a possible "If:" header. [500, #0]
というエラーが出てどうしようかと思ったが、DavLockDB に間違ってディレクトリを指定していたのがまずかったらしい。ファイルにしたらすんなり通った。(上の設定ならOKね。最初はtouch lock/fileが無くて、DavLockDB /webdav/lockと指定していたのだ。なんか参考にしてる文献によって微妙にディレクトリだったりファイルだったりして惑わされたが、ファイルで良いらしい)
というわけで、設定終了~。
どうでもいいがこれらの設定を一個にわかりやすくまとめれば一種のノウハウ特集ができるな<br>(ペラ本と書こうか迷ったが)
>わかりやすくまとめれば一種のノウハウ特集ができるな<br>冬コミに出すよ!!(多分