Cloudflareのテンプレートが再び壊れた

これは Issue with Cloudflare template と同様の問題ですが、今回は Cloudflare が IPv4 リストから末尾の改行を削除してしまったため、以下のような出力になっています(問題箇所を示すコメントを追加しています):

set_real_ip_from 173.245.48.0/20;
set_real_ip_from 103.21.244.0/22;
set_real_ip_from 103.22.200.0/22;
set_real_ip_from 103.31.4.0/22;
set_real_ip_from 141.101.64.0/18;
set_real_ip_from 108.162.192.0/18;
set_real_ip_from 190.93.240.0/20;
set_real_ip_from 188.114.96.0/20;
set_real_ip_from 197.234.240.0/22;
set_real_ip_from 198.41.128.0/17;
set_real_ip_from 162.158.0.0/15;
set_real_ip_from 104.16.0.0/13;
set_real_ip_from 104.24.0.0/14;
set_real_ip_from 172.64.0.0/13;
set_real_ip_from 131.0.72.0/222400:cb00::/32;  # ここに問題あり
set_real_ip_from 2606:4700::/32;
set_real_ip_from 2803:f800::/32;
set_real_ip_from 2405:b500::/32;
set_real_ip_from 2405:8100::/32;
set_real_ip_from 2a06:98c0::/29;
set_real_ip_from 2c0f:f248::/32;

現在、f568633bf060c18cc0866b4018842ce9ec9da33a(最新の main ブランチ)を使用しています。

末尾の改行の有無にかかわらず動作する簡単なデモコマンドを以下に示します。元のスクリプトからのエスケープ処理は含まれておらず、必要に応じて適応させる必要があります。

{ wget https://www.cloudflare.com/ips-v4/ -O - && echo && wget https://www.cloudflare.com/ips-v6/ -O -; } | sed '/^$/d; s/.*/set_real_ip_from &;/'
「いいね!」 4

テンプレートのスクリプトの最初の部分を以下のように変更することで、問題が解決し、不要な改行が正しく処理されます。

#!/bin/bash -e
# CloudFlare の IP アドレスのリストをダウンロード
wget https://www.cloudflare.com/ips-v4/ -O - > /tmp/cloudflare-ips
echo >> /tmp/cloudflare-ips
wget https://www.cloudflare.com/ips-v6/ -O - >> /tmp/cloudflare-ips
# nginx コマンドに変換し、sed 追加コマンドに含めるためにエスケープ
CONTENTS=$(</tmp/cloudflare-ips sed '/^$/d; s/^.*/set_real_ip_from &;/' | tr '\n' '\\' | sed 's/\\/\\n/g')
「いいね!」 3

PR: Fix line break handling in Cloudflare template by Zenexer · Pull Request #558 · discourse/discourse_docker · GitHub

「いいね!」 6

この問題は上記のものに関連していますか?@AntiMetaman

私は何度も droplet の移行と変更を行ってきましたが、再構築後の 502 エラーを止めることがまだできていません。詳細はこちらです https://meta.discourse.org/t/discourse-updated-from-admin-not-working-after-rebuild-fatal-error-site-does-not-load-anymore-after-rebuild/200443

これがいつ頃修正される見込みでしょうか?修正され次第お知らせください。そうすれば、もう一度再構築を試みて、再び 502 エラーでクラッシュすることを避けられます。@Zenexer

「いいね!」 1

PR をありがとうございます @Zenexer!マージしました!

「いいね!」 6

このトピックは17時間後に自動的に閉鎖されました。新しい返信は受け付けておりません。