2017年10月28日

Mastodonインスタンスをv2.0.0にアップデートしたら画像をアップロードできなくなったお話

BABYMETALファンのためのMastodonインスタンス "babymetal.party" を先週の土曜日(10/21)にv2.0.0にアップデートしました。
僕がMastodonを始めてからの初のメジャーアップデートです。

今回のアップデートで大きく変わった点はインスタンス独自のカスタム絵文字が使えるようになったことですね。
今までは既に用意されている絵文字しか使えなかったのですが、v2.0.0からは50kbまでのpngをインスタンス独自の絵文字として追加できるようなりました。
babymetal.partyではBABYMETALファンアートでおなじみのCANTAさんにイラストを提供していただいてカスタム絵文字として登録しました。
201710211513cap.PNG

そんなわけでですね、インスタンスをv2.0.0にバージョンアップしたわけですけど、バージョンアップ後にちょっとした不具合が発生してしまいました。
画像付きのtootをしようとすると500エラーのステータスを返してくるようになってtootが出来ないんですね。
ちょっと他のインスタンスなんかも検索してみると同様の不具合が生じているインスタンスがいくつかあるみたい。
500エラーだから「画像を保存するディレクトリのパーミッションでも変わっちゃって保存できないのかな?」と思って試しにパーミッションを777にしてみても状況は変わらず。色んな画像をアップロードしてみると5kbくらいまでファイルならアップロード出来るっぽいってことまではわかった。
その時にmastodon.cloudにtootしたのがこれ
結局、丸々半日あれやこれやしても治らないのでその日は諦めた。
翌日は朝から作業。
dbのディレクトリのパーミッションをいじっても変化がないということは、サーバアプリケーションのnginxの設定がおかしいのかなと思って設定ファイルを調べてみてもおかしいところは見つけられず。
ネットでnginxを使った不具合を色々と調べてみるとドンピシャなページを見つけました。
このページを見て /var/lib/nginx のuserをnginxの設定ファイルで設定しているuserに変更したらあっさりと治りました。

こうなった原因としては、インスタンスのアップデートをする前にyum updateをしたのですが、その時にnginxの実行userが書き換わってしまったのではないかと考えられます。

そんなわけで、現在は問題なく稼働しています。
同様のトラブルに遭遇しているインスタンス管理者さんの参考にもでもなれば幸いです。
posted by mamma at 15:55| Comment(0) | TrackBack(0) | Mastodon