Go to this month’s calendar
2017 / 03 / 22

今日やったこと

Noraworld BlogGhostを使っているが
なんと今の今まで開発環境モードでサイトを立ち上げていた
もちろんそれははじめてブログをデプロイしたときからわかっていたことではあるけど
特に違いもわからなかったのでそのまま使っていた

(たしかそのときはプロダクションだとエラーが出てうまく起動できなかったので開発環境モードで起動していた気がする
それも今振り返ってみると単なる設定ファイルのミスだったような気がしてきたけど
昔は参考サイトのコマンドをただコピペしてただけだったのでエラーの原因がわかっていなかったんだと思う)

でも、Ghostのリポジトリにあがっているissue
特定のパスでリクエストを投げるとエラーが表示されるというものを偶然見つけて
実際にそれを自分のブログに対してやってみたらたしかにエラーが表示された

問題なのは開発環境モードで起動していたため
スタックトレースの情報まで表示されてしまっていた
その中にはGhostを立ち上げているディレクトリのパスとかが細かく表示されていて
これをそのままにしておくのはさすがにまずいな…と思ったので
今回、プロダクションモードに切り替えることにした(やっと)

開発環境モードとプロダクションモードでは当然データベースが違うので
今まで書いてきた記事はずっと開発モードのデータベースに入っていたことになる
なので単に起動時のオプションをプロダクションモードにするだけでは
今まで書いてきた記事がすべてなくなってしまう

でもこれの解決方法は意外に簡単で
単に開発モードのデータベースファイルをプロダクションモードのファイル名に変更すれば良いだけだった

というわけでめでたくプロダクションモードで起動できた


これだけならまだすぐに終わったんだけど
自分のサーバではブログだけじゃなくてポートフォリオもNode.jsで動かしている
GhostはNode.jsの推奨バージョンがちょっと古いので
ポートフォリオとブログとで違うバージョンのNode.jsを使い分けている

今までずっとディレクトリに入ってはバージョンを切り替えるコマンドを実行してたけど
さすがにめんどくさいのでディレクトリに入ったらNode.jsのバージョンを自動的に切り替えられるようにしたかった

今まではnvmというバージョンマネージャーを使っていたが
これはディレクトリ(プロジェクト)ごとにNode.jsのバージョンを自動的に切り替えられるのかわからない
(わからないというかそもそも調べておらず、それよりも先に)
◯◯env系なら共通してlocalコマンドが使用できることを知っていたので
nvmからndenvに切り替えることにした

RubyもPythonもPHPも全部◯◯envで共通していたので
Node.jsだけnvm使っていると使い勝手があまりよろしくなかった

ということでNode.jsのバージョンもいちいちポートフォリオとブログで
切り替える作業をしなくて済むようになったので楽になった


ついでにGhostでデプロイしているブログのadminパスワードを忘れたとき用に
メールを送るためにmailgunの設定をしようと思ったんだけど
なぜかアカウントを登録しても機能が使用できず
おかしいなと思っていたら、なんとアカウントが停止されていた

アカウントが停止されていますというメッセージとともに
サポートにコンタクト取ってくださいというリンクがあったので飛んでみたら
404 Not Found で見れなかった

その時点でもけっこう謎なんだけど
さらにググってみて、公式ヘルプが出てきたんだけど
そのヘルプにはサポートチームに連絡してくださいと書いてあって
リンク先に飛んでみたらなんとヘルプのトップページに飛ばされるだけだった

mailgun本当に対応が変じゃないか?

アカウントが停止されていた理由もはっきりしないし
アカウントを作成してすぐに使おうと思ってたんだけど
すでにアカウントが停止されていたしで
mailgun本当に意味がわからない

ということで解決策も何もなさそうなので諦めた
まあパスワードはGoogleスマートロックに保存されているので
ログインできないこともないだろうし
万一そうなったとしてもデータベースに直接アクセスできるので
なんとかなるでしょうきっと

mailgunは本当に意味不明だったけど
ブログをプロダクション環境で起動できて
Node.jsのバージョン管理も楽にできたので良かった


FEH召喚

img_0170

星5が出たけどはじめて見たから強いのかよくわからん

img_0169

img_0171