JustinBack
(Justin René Back)
1
오늘 업데이트를 수행하고 envs에서 S3_CDN_URL 옵션을 활성화한 후, markdown-it-bundle를 제외한 모든 것이 로드됩니다.
https://tosdr.community/https://tosdr-community.s3.jrbit.de/assets/markdown-it-bundle-5a633717415fd164893a925e4cac1406ecab8179d15637506b08a147ab543433.br.js
서버에 에셋이 존재하고 업로드되었음에도 불구하고, discourse는 여전히 base url을 접두사로 붙입니다.
다른 모든 에셋은 정상적으로 작동합니다.
uploads 테이블을 확인했는데, 모든 URL이 올바른 형식을 갖추고 있습니다.
이 문제를 해결하기 위해 살펴볼 수 있는 다른 테이블이 있거나, 단순히 이 문제를 수정할 방법이 있을까요?
remap과 유사하지만 전체 데이터베이스에서 문자열을 검색하는 DbHelper가 있을까요?
S3를 사용하여 Discourse를 설정하는 가이드를 따랐나요? 이 주제에 따르면 설정하려면 따야 할 복잡한 단계가 많다고 합니다:
솔직히 이 부분은 내 전문 분야가 아니지만, 비슷한 문제가 있는 주제를 찾았으니 도움이 될지 모르겠네요.
JustinBack
(Justin René Back)
8
@crcoli7307 네, 제가 쭉 따라갔던 바로 그 주제였어요 
@JammyDodger
주제를 올려주셔서 감사합니다!
그래서 S3_CDN_URL을 다음과 같이 변경해 보았습니다:
DISCOURSE_S3_CDN_URL: https://s3.jrbit.de/tosdr-community
하지만 불행히도 스타일시트가 어디서 로드되는지에 관해 모든 것이 깨졌습니다.
이것이 버킷 이름 때문일까요? 도메인과 거의 비슷하니까요.
버킷 이름: tosdr-community
도메인: tosdr.community
스타일시트가 어떻게 구성되는지 확인해 보세요.
JustinBack
(Justin René Back)
9
새 버킷으로 마이그레이션을 마쳤는데: 버킷 이름 때문이 아니라, 동일한 문제가 계속 발생하고 있습니다.
JustinBack
(Justin René Back)
10
수정: markdown-it-bundle가 어떻게 임베딩되고 실행되는지 확인했고, rail 콘솔을 통해 script_asset_path를 실행했습니다 (request.env 변수가 없어서 약간의 수정을 가했습니다).

script_asset_path에 따르면 애셋 URL이 올바르게 생성되었습니다. 그래도 왜 이런 일이 발생하는지 여전히 모르겠습니다.
편집:
알려진 버그인 것 같습니다.
편집 2:
가장 난잡한 우회 방법을 사용하여 "수정"했습니다. nginx 설정에 애셋을 하드코딩하고 리디렉션했습니다.
location ~ markdown-it-bundle-dcd9743077867b3a68d7b723130cb2711dc4c843b018d7bc609f868289402fef.(.*).js {
return 302 https://tosdr-forum.s3.jrbit.de/assets/markdown-it-bundle-dcd9743077867b3a68d7b723130cb2711dc4c843b018d7bc609f868289402fef.$1.js;
}
애셋이 업데이트되지 않는 한 잘 작동합니다 