天津神本舗を SSL 化する話

今日はわりと遅めに食事に出たため、お店はだいたいどこも昼休み(?)に入ってしまっていた。個人経営の飲食店は、14 時頃から 17 時頃まで閉まってしまうことが多いのだ。その時間帯にやっているのはチェーン店かラーメン屋くらいなものである。

というわけでとんこつラーメン屋さんに入ってみた。
一瑞亭
食べログの店数が妙に高いが、とりたててこれはという感じではない。普通(ぁ
スープは真っ白ではなく、濁り系。博多ラーメンらしいあっさりした感じはでてて食べやすいと思った。
炒飯がしょっぱかったー。

ちなみにこの一瑞亭、前に食べた由丸と同じ並びにある。由丸は白くてミルキー系(北九州系なんだろうか?)で特色は全然違うので、その二つが味わえるのはいいなと思った。

ところで同人の方で使っている amatsukami.infoSSLHTTPS)化をしてみた。
世間はなんでもかんでも SSL 化である。Google Chrome に至っては SSL 化していないサイトにアクセスすると警告を出す始末。えー、たかが個人サイトに SSL 化って必要なの?? っていう思いは未だに変わらないものの、世の中がそういう流れになっていくので仕方なく(ぉ

といっても自分のサーバでやったのではない。
実は自分の所でやらない大きな理由がある。それはウチのウェブサーバである IIS7.5 が SNI にちゃんと対応してないのだ。暗号化されたウェブページを取り扱う HTTPS は、何もかも暗号化するため、amatsukami.info と言うようなドメイン名まで隠蔽してしまう。となると一つのサーバでいくつものドメインを運営しているサイトにはアクセスできなくなってしまうのだ(なんのドメインでアクセスしに来たのか解らなくなるため)。
そこで HTTPS で通信を確立する前に平文でドメイン名だけをやりとりする規格が SNI なのだが、ウチのサーバにはその機能が無い(正確にはないわけではないが、対応が中途半端)。
そのため、amatsukami.jp や amatsukami.info、他にも様々なサイトを動かしているウチのサーバは SSL 化ができないでいた。

まぁそもそもサーバ自体を更新しなくちゃいけないんだけどね。こっちは裏で少しずつ進行中。

とりあえず練習も兼ねてテキトーなホスティング サービスを契約した。月 300 円(ぁ
ファイル容量は 100GB、DB は三つまで。DB の容量は 100 MB まで。
DB の制限がきつすぎるなぁ、と思いつつ……。

まず一回目は失敗。どうしても WordPress が動かなかった。
DB の問題か? それとも WordPress のスクリプトの問題か??

それから一日おいて、もう一度試してみた
すると ASCII モードで転送していたのが問題だったようだ。とりあえず動いてエラーを吐くところまではきた(前回はウンともスンとも言わなかった)。そのエラーを見ると、今度は memcached 関連のところで動かなくなっていたことが解った。それらを取り外すと動き始めた。

次に萌え時計だ。これが動かないんだwww
原因はファイル名に日本語を使っているからというのは何となく推測できたのだが、それの何がいけないのかさっぱりわからない。ファイル名の文字コードソースファイル側の文字コードを合わせたりしたのだが、まったくダメ。

結局これはソースコードの UTF8 から EUC にコンバートすることによって動いた。

もっとも時間がかかったのがファイルのアップロードだ。FTPS でアップロードしたのだが、とにかく途中で止まるのだ。天津神本舗は 1.16GiB ほどのデータが有り、ファイル数は 6174 個。とまりまくってそのたびに再接続してまたアップするファイルを指定して……とかやってたんだけど、6 時間ぐらいかかった。
あほらしい……orz

これ、どうも NextFTP というソフトだとなるらしい。確かに一回目の時は CyberDuck というソフトを使ったのだけど、そちらだと三回ぐらいしか止まらなかった。もー、なんなの?? じゃぁなんで二回目も CyberDuck を使わなかったのかというと、同じファイルがあった場合にちゃんとした比較がなかったのと、バイナリ モードだけでアップする方法がよく解らなかったため。たぶんどっちもないわけじゃないとは思うんだけどね……設定を見つけられなかった。

ちなみに萌え時計はもっとデータがデカくて、7GiB オーバー。こっちもアップするのが大変だった~。

なんだかんだで Windows Server と Linux はけっこう違うなぁと実感した作業であった。

iPhone の動画とか西武池袋線とか萌え時計とか

iPhone で撮影した動画を Premiere で読み込ませると、映像と音声が同期しないという記事は以前にも書いた。原因はわからないまま、現在も動画を編集するときは 60 分 あたり 2 秒ほど音声を短くするという対処方法をとっている。
でもこれをやるのはけっこうめんどくさかった。

上のツイートでは Premiere が直してくれたようにつぶやいているが、実はこれ、iPhone 7 だと問題なく、iPhone 6 ではやっぱり音と映像がずれていた。というのも Premiere 2017 でも iPhone 6 で撮ったデータは相変わらずズレているからだ。
どうやら Premiere が悪いのではなく、iPhone 側のデータに問題があるようだ。

そしてこれは iPhone 7 で解決したわけでもなかった。
2 ヶ月後の話になるが、iPhone 7 でも 60fps のデータは音ズレが発生することが判明。やはり iPhone 側に問題があるようだ。だが、ネットで検索してもこの現象に悩んでる人がいないみたいなんだよねぇ? iPhone はプロが映像作品を作る時にも使われているらしいのでこの問題にぶち当たってる人はいそうなんだけどなぁ。

もちろん気付かれていない(問題視されてない)可能性もある。そもそも音は別マイクで録っているだろうし、ズレも 60 分に 2 秒程度だ。プロの映像作品だと細切れにして撮っていることが多い。5 分や 10 分程度ではズレに気付かない(問題ない)かもしれない。

電車は 5 分くらい遅れたのでは運行情報には出ないようだ。
遅刻したけどな!

萌え時計を自分のサーバに設置せずに使う場合、amatsukami.info サーバを使うことになるのだが、コイツは HTTP で通信しているため、HTTPS なサイトに萌え時計を貼ると表示されなくなる。
う~む、最近は何でもないサイトでも HTTPS を使う傾向にあるし、そもそも Google 検索の検索結果は HTTPS を優先させる措置を執ったため、どうでもいいサイトでもどんどん HTTPS 化している。
ウチも HTTPS にすればいいじゃんと言われるとそれまでなんだけど、IIS 7.5 ではバーチャルホストのどれか一つしか HTTPS のサイトが作れないという欠点があるのだ。現在、ウチのサーバは開発者用のサイトがあるのだが、そいつが HTTPS を使っているため、他のサイトは HTTPS 化できないのである。
IIS 8.0 以降では出来ることは確認しているので、サーバを刷新してからかなぁと思っている。