MastodonのS3を生アドレスからnginxのプロキシ越しに設定した。
寄り道したけれど、最終的には公式ドキュメントを頼った。
https://docs.joinmastodon.org/admin/optional/object-storage-proxy/
この公式には修正が必要。
server_nameの後ろに
ssl on;
ssl_certificate /etc/letsencrypt/live/files.${DOMAIN}/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/files.${DOMAIN}/privkey.pem;
が必要。そして、
proxy_set_header Host
には、ホストネームだけではなくて、$s3_backendで指定したバケット+エンドポイントのドメインを入力しなければならない。
ex) mastodon-bucket.s3-us-west-2.amazonaws.com
@taiyo ありがとうございます!
S3のパス形式(https://YOUR_S3_HOSTNAME/YOUR_BUCKET_NAME)って、非推奨化で新規バケットでは使えなくなったと認識してたんですが、今も使えるんでしたっけ?
(参照:
* https://aws.amazon.com/blogs/aws/amazon-s3-path-deprecation-plan-the-rest-of-the-story/
* https://docs.aws.amazon.com/ja_jp/AmazonS3/latest/userguide/VirtualHosting.html
仮想ホスト形式 https://YOUR_BUCKET_NAME.YOUR_S3_HOSTNAME だと、dot含むバケット名だとhttpsが使えなくなっちゃう問題があるのですけど
@taiyo @zundan
あれれ、そうなんですね。
私のところでは(Mastodon公式のを見ずに昔作ったものベースですが)、仮想ホスト形式でproxy 動いているんですよね。なにがちがうんだろう…
(このへんに書いています
https://skoji.jp/blog/2023/01/mastodon-moving.html )