サーバ用の仮想マシンの準備もできたので、さっそくdelegate.orgをこちらへ引っ越そうとしたのですが、いくつかの困難(^ー^;に遭遇しました。
まず、delegate.orgのネームサーバををお任せしているN. Sol. でDNSサーバの設定を変えようと思ったのですが、自分のアカウントからそれが見えない。そんな… ドメイン更新・料金請求のページにはちゃんとあるのに。メールではあれほど熱心にSPAMは送ってくるのに…
なにせ N. Sol. とは20年来のお付き合いです。1998年に初めてドメインを取った時、印刷されたドメイン名交付書みたいのが届いた時にはすごくうれしかったのを覚えています。多分あの頃ドメイン名は、今より一桁くらい高価だったようにも思いますから、とても有難いものでした。
Whoisにはこうあります。
Domain Name: DELEGATE.ORG
Registry Server: whois.networksolutions.com
Creation Date: 1998-07-07T04:00:00Z
Registrar: Network Solutions, LLC
Registrar IANA ID: 2
なんってたって「IANA ID: 2」ですから、ついリスペクトしちゃいますね。個人的思い入れもありました。
まあその後身売りしたり、競合他社に押されまくったんでしょうけど、時代に取り残され遅れ、今のサービスレベルや管理サイトの出来は惨憺たるものです。
問合せフォームやメールで連絡しても、機械応答だけ、なしのつぶてです。以前からそうでしたが、今回は待ってられません。腹がたったのでボロクソ書いたページを作って、そのURLを送りつけてやりました(笑)。バイバイ Network Solutions.
delegate.org ドメインのコントロールはいずれ取り返すとして、せっかく建てた Azure 新サーバへの引っ越しは急ぎたい。でないと、Azure から無駄な出費がドクドク流れ出てしまう。
というわけで、delegate9.org というドメインを作って移行することにしました。ぺけぺけ9というのは、トンプソンの plan 9 とか 巨人の v9 とかを想起させるので、良いイメージです。AISTで開発されたDeleGateも ver.9 が最後となりました。動態保存が主目的のサイトにふさわしい。
それで早速 xsonamae.コムで delegate9.org をゲット。登録作業から支払いまで2分程度で完了です。この支払い¥1,496 が、我が社の法人口座からの初めての送金となりました。
それで、アドレスを登録してDNSが開通するのを待っていたのですが、何分、何十分待ってもホスト名が解決できない。xsonamae はドメインを登録すると速攻でアドレスを自社の宣伝ページに向けますし、どうやらそのTTLがかなり長いらしい。キャッシュされてしばらく消えないわけで、それを「数時間かかることもあります」とかうそぶいている。誰のせいだっちゅううの。
最初、URLリダイレクションとして登録してしまったのもまずかったかも知れません。またあとで考えると、こっちの手元のルータかMacのリゾルバのキャッシュのせいかも知れません。結局実際、貫通するまで数時間かかりました。
一方、Azure上の仮想マシンからはサクッと正しいアドレスが引けるようになっていたので、とりあえずそこにプロキシを立ててしのぎました。DeleGateをプロキシとして使ったのは数年ぶりです。
それで残る問題はDeleGateのHTTPサーバです。とりあえず普通に見れますが、HTMLの中にフルのURLで http://www.delegate.org/... などと書いてあるのがあるわけです。自分自身や検索エンジンから生成しているURLなどもそれです。
対処法は、HTTP応答メッセージの中に含まれるURL相当部分の .delegate.org を .delegate9.org に書き換えることです。それだけです。特に応答がHTTPヘッダとHTMLのタグだけあれば簡単な事です。そしてまさにこういう時の移行を簡単にできるのをDeleGateのウリにしてたはずなのですが、やり方を忘れてしまいました。
それで、自分で書いたマニュアルを読んだり、記憶を辿ったりしながら、設定ファイルに数行加えて、なんとかそれらしく動くようになりました。まだ不完全ですが… ユーザとして欲しいのは「ドメインを引っ越した時にはこう設定をすれば良い」というそのものズバリのドキュメントなのでした。
たぶん、リバースプロキシとして一段かませれば一行書くだけで簡単なのですが、無駄に負荷をかけたくないので、オリジンHTTPサーバとして動かしたく、そういう場合には若干面倒なようです。
ドメイン名も変えたし、旧サーバからHTTPを全部リダイレクトするのが簡単なのですが、ちょっと危険なので、とりあえずリンクを貼るだけにしました。まあ、そうすると早速おいでになるのがロボットさんなわけですが… てか、誰にも存在を教えなくても、マシンをネットに繋いだらすぐにやって来ますしね。http://IPアドレス/ で来たりさえする…
素性の知れたロボット以外は「私はロボットではありません」的な工夫で門前払いするのが良いと思うのですが、それをアプリケーションレベルでやると、それ自体が結構重くなってしまいます。Azureのネットワークインタフェースでそういうことをやってくれると良いのですが。あれ?なんかそういう賢いリソースもあったような。お金取られるでしょうけど。
2020-0430 sato@izmoh