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
# Download list of CloudFlare ips
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
# Make into nginx commands and escape for inclusion into sed append command
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 - Pull Request #558 - discourse/discourse_docker - GitHub

6개의 좋아요

이 문제가 위 내용과도 관련이 있나요? @AntiMetaman

드롭렛을 여러 번 마이그레이션하고 변경했지만, 리빌드 후에도 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개의 좋아요

@Zenexer 님, PR 올려주셔서 감사합니다! 병합했습니다!

6개의 좋아요

이 주제는 17시간 후 자동으로 닫혔습니다. 더 이상 새 답변을 게시할 수 없습니다.