サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
大谷翔平
inuz.hatenablog.com
自分でDNS権威サーバを運用してる人は自分でちゃんとやんなさい、と思うのでここでは扱いません。 以下の手順は、自分のドメインのDNS権威サーバに、DNSホスティングサービスを使っている人向けの情報です。 移転先のDNSホスティングサービスと契約する どこかを探してまずは契約。 将来またどこかに乗り換える時に備えて、NSレコードを設定変更可能なところをオススメします。旧サービスの契約終了前までに、新サービスが利用開始できていることが必須です。 たいして高いサービスでもないので、1〜2か月ぐらい両方契約しておくぐらいのつもりでいると、何かで困っても慌てなくて良いと思います。 移転先のDNSホスティングサービスで、ゾーン情報を整備 必要なTXT/MX/A/CNAME等を登録します。 旧DNSホスティングサービスで設定しているものと、基本的に同じ内容を用意して下さい。 変更の必要が確定しているレコ
TwitterID:@inuwarumonoというのは僕のことです。 Twitterにて@ockeghemさんというか、徳丸浩さんとNSサーバ移転について 教えて頂いたり意見させて頂いたり、やりとりをさせて頂きましたが 僕の言いたかった事が正しく伝えられなかったことと、僕が正しく理解できて いなかったことなどを、ブログの形にまとめます。 まずは経緯、背景から触れて、次に争点を整理し、検討を加えて最後にまとめます。 経緯 きっかけは徳丸さんのこのツイートでした。 ONAMAE.COMのレンタルDNSサーバーではNSレコードは変更できない(01.DNSV.JPなど固定)ので、NSレコードのTTLが5分というのは本当に意味ない、と思います— 徳丸 浩さん (@ockeghem) 3月 8, 2012 これに対して、NSレコードのTTLが5分というのに意味がない点には完全同意ですが、 僕は徳丸さん
まずは運営のライブドアの皆さま、楽しいイベントをありがとうございました。 さて、俺id:inuzことTwitterID: inuwarumonoは同じ会社のアプリ屋2名と一緒に、チーム名「ツヤマ倶楽部」として出場してきたのでそのメモ/レポートを。 出場者3名とも名前はツヤマさんでは全然なくて、ツヤマというのは弊社技術部門の最高責任者の名前。(会社名は非公開)。 俺はインフラ/ミドルウェア屋なので、主にOSやらミドルウェアの最適化を考える担当。あとの2名はアプリケーション側からの切り口での改善と、それに伴うミドルウェアの最適化。両面からのアプローチというのが当初の作戦だった。 事前準備が肝、ということでツヤマ倶楽部の面々が考えていた事前対策は以下のとおり。 DBのクエリ解析が肝になるはず。的確にボトルネックを探すには断然クエリアナライザ。 パフォーマンスモニタリングが重要、でもまぁsarで良
FAQとも言えるコネタ。意外に知らない人が多いらしいので、記載。 $ touch -test touch: invalid date format `est'touchコマンドで、"-test" を作ろうとしたら、怒られた。 $ echo > -test $標準出力をリダイレクトすると怒られずに終了。作れたっぽい。 $ ls -l -test ls: invalid option -- e Try `ls --help' for more information.ls -l しようとしたら、これまた怒られた。 $ ls -l | grep test -rw-rw-r-- 1 inu inu 1 Sep 5 15:34 -testしかしながら、確かにファイルはある。いらないから消してみよう。 $ rm -test rm: invalid option -- t Try `rm --help'
いつもいつもいつもいつも使う時にあれれと思い、コマンドが足りないだとか、(shに)Illegalだとか言われるのでココにメモ。 $ cat hoge | sed '/^$/d' こんぐらいサックリ使えよ、と自分でも思う。悲しいほどにsedは身につかないなぁ。sed は stream editor の略(たしか。うろ覚え)で、ちゃんと極めるととってもとっても便利なのですよ。 $ cat /etc/inetd.conf | grep -v '^#' | sed '/^$/d' 例えば inetd.conf の中から、コメント行を抜き、空行を抜いて表示するにはこうなる。 sed '/^$/d' は grep -v '^#' と併せて使うことが(俺は)多い。(けど覚えない)
昨日までVMWare Server 2.0を使っていた。今日からVirtualBox 2.0 を使っている。 VMWareはタダだし、本当に良くできたソフトウェアだ。1.x→2.0でUIをブラウザに載せてくれちゃったのには辟易したが、それにしても良くできたソフトウェア。便利。そして速い。快適。ほとんど完璧と言えるソフトウェアだ。 ある一点をのぞいては。 そのある一点とは、ショートカットキー。最悪だ!強烈なのだ! Ctrl+Rはブラウザのリロードだったり、emacsの↑向き検索だったり、まぁよく使うんだ。俺は。 だけど、VMの中の窓に送るつもりのCtrl+Rの入力が、不意打ちのようにVMの窓そのものがアクティブになっていて、VMの窓に届くことがある。そのとき、VMは強制リセットなのだ! VMの中で動かしてるブラウザでリロードしようとしたら、VMもろとも強制リセット。 一昨日3回目のCtrl+
mod_auth_digestでDigest認証を使う場合、Apache付属のhtdigestコマンドを使ってパスワードファイルを作成する。mod_auth_basicでBasic認証を使うときに、htpasswdコマンドを使うのと同じだね。 さて、htdigestコマンドを使えば良いことなんだけど、CGIをインタフェースにユーザ管理画面を提供しようと思うと、インタラクティブなインタフェースしか持っていないhtdigestコマンドはどうにも扱いにくい。expectで書くのもなんだかバカらしいというか。 そこで、PerlスクリプトでDigest認証用のファイルを作ることにしたよ。 use Digest::MD5; $htdigest = &get_htdigest($user, $realm, $pass); sub get_htdigest() { my $user = $_[0]; my
とにかく何が来ても「御免!」と応答するWebサーバを考える(以下、単にSorryサーバと呼ぶ)。 Sorryサーバの実装にはいくつか考えられる。 ErrorDocumentを使う AliasMatchを使う mod_rewriteを使う これ以外にもありえると思うが、ErrorDocumentより簡単でmod_rewriteより何でも出来る方法はちょっと思いつかない。 ErrorDocumentを使う場合 一番最初に思いつくのはコレじゃあるまいか。 ErrorDocument 403 /SORRY/index.html ErrorDocument 404 /SORRY/index.htmlDocumentRootに/SORRY/ディレクトリのみを設置し、/SORRY/以外のどんなURLでアクセスされても 403 または 404 になる事を使って、このエラードキュメントをSORRYコンテンツ
好き嫌いの問題っていうよりは信頼性の問題で open, write, close のほうが普通?って思ったりするけれど、それはおいといて。 以下のソースコードは、引数に与えられたパスに1バイト分"a"を書き出して終了するプログラム。 #include <stdio.h> #include <errno.h> int main(int argc, char *argv[]) { FILE *fp; char s[1] = {"a"}; size_t fwb; int ret; if ((fp = fopen(argv[1], "a+")) == NULL ) { printf("Failed to open: %s\n", strerror(errno)); exit(1); } fwb = fwrite(s, sizeof(char), 1, fp); if (fwb < 1) { pri
やー、できたできた。たいへんだった。 まず、32bitでコンパイルして同じPrefixにインストールした物が存在する状態で、64bitコンパイルをしようとすると、src/support/のあたりのmake時に、インストール済み(32bit)のlibaprutil-1.soをリンクしようとするのでコンパイルできません。-Lを工夫するか、インストール済みのものを消すなり動かすなりすること。(これはconfigureやらMakefileのバグとも思えるけど、仕様とも言える話) ともあれ、以下、Solaris10でApache2.2.2を64bitでコンパイルする件。 $ PATH=$PATH":/usr/sfw/bin:/usr/ccs/bin:/usr/ucb" $ export PATH $ env CC="gcc -m64" ./configure \ --enable-mods-shar
802.1qとは 普通のパケットに、VLANタグをつけてカプセル化するための規格。当然受け側も対応が必要。1つのインタフェースで複数のVLANのパケットを流せるのが美味しい。 構成 <<Network_A>>───[賢いスイッチ]───<<Network_B>> ┃ <<Network_A,B両方の足を持ったホスト>>縦の太い線の部分が、802.1qでカプセル化したパケットが通るところ。当然1本。Cat5eEtherケーブル。 スイッチ側の設定 賢いスイッチにはCatalyst 2924を使うことに。 ! interface FastEthernet0/1 switchport access vlan 3 ! interface FastEthernet0/2 switchport trunk encapsulation dot1q switchport trunk allowed vla
ってな時の話は誰しも困るもの。 俺は今困ってないけど、そうなっちゃった時の対策を検討してます。はい。 負荷の原因が特定少数による場合なら検出してはじけばよろしい↓。 とあるはてな社員の日記 - サーバにDoS耐性を付ける http://d.hatena.ne.jp/stanaka/20070204 来た負荷の種類に関係なく、負荷をヨソに逃がしてよけるなら↓。 Milano::Monolog - mod_rewriteでサーバーの負荷が高いときだけリダイレクトする http://rebecca.ac/milano/mt/archives/001540.html (↑RewriteMapで毎度perl叩くのもそれなりに負荷?) Clouder::Blogger - mod_loadaverage_actionリリース http://clouder.jp/yoshiki/mt/archives/
さてVerisignから届いたよ、って時に5枚頼んだは良いけれど、鍵ファイルをkey1.txtみたいな名前しちゃったからどれがどれだかわからないよママ〜〜!! そんな馬鹿な御仁のための確認方法は以下。modulusという奴を確認すればよろしい。(日本語でなんて言うの?知らない) $ openssl x509 -in 証明書ファイル -modulus -noout $ openssl rsa -in 鍵ファイル -modulus -noout証明書と鍵とで、modulusを比べて同じならば、正しいペアだ。もっと簡単に調べる方法があったら教えてプリーズ。 証明書の内容を閲覧するには $ openssl x509 -in 証明書ファイル -text↑でも出てくるが、ぱっとわかる形で有効期限を確認するには $ openssl x509 -in 証明書ファイル -noout -datesとやればよろ
5年前はまだNetscape6とIE5ぐらいしか対応してなかった(と思う)Digest認証、いくらなんでももう使えないクライアントもそうそういないよね、ってなわけでDigest認証を使うことにしたんです。 Digest認証というのは、Basic認証の仲間で、Basic認証がパスワードを平文で送るのに対して、パスワード文字列を暗号化して送るからパケット盗み見されても大丈夫、というわけ。 Digest認証を使えばセキュリティ上のリスク対策は万全!なんてものでは決してないけれど、Basic認証を使うぐらいならDigest認証を使ったほうが良い、そんなものです。大事なもんならSSL使え、って感じだしね。 さて、そんなDigest認証、最近のブラウザなら当たり前に使えるもんだと思っていたら、IE6ったらマトモに使えねーでやんの。IE6が相手になるであろうDigest認証を使うApacheには1行追加
http://search.cpan.org/~ingy/orz/lib/orz.pm バカですか(笑) total failureって何だろう?って思ったので、ソースを読んでみると sub pmc_compile { my ($class, $source) = @_; $source =~ s/^/# /gm; return "# orz...\n$source"; }こういうことだった。use orz;した後からのソースがコメントアウトされる、というわけだ。 #!/usr/bin/perl print "a\n"; print "b\n"; use orz; print "c\n"; no orz; print "d\n";サンプルソースにしてもお粗末過ぎる内容だけれど、これを実行すると、"c"は出力されない。こっからここまでをコメント化してテストしてみる、そういうコーディングスタイ
HTTPで何かのコンテンツを取得するのは普通 GET だけれど、 POST /path/to/file.html HTTP/1.0(改行) (改行)こんなことをやるとどうなるか、という話。 POSTメソッドというのは、情報をサーバに送りつけるためのメソッドであって、コンテンツを取得するための物ではない。なので、POST本来の意味において、上記枠内のようなリクエストは不正であると言わざるをえない。何にも情報を送ってないからね。204 No Content なんていうHTTPステータスコードが、"コンテンツはないよ"なのに、204 なのは純粋にPOSTが情報を送るためのメソッドである証拠と言えましょう(2で始まるステータスコードはオッケーの証)。この話のネタ元の人によると、これは「エラーになった」とのこと。エラーってどんなだろう?と思ってかるくテストしてみたら、これがわりと面白かったので掲載。
このページを最初にブックマークしてみませんか?
『inuz.hatenablog.com』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く