Let's Encrypt를 사용하고 리버스 프록시 없이 멀티사이트 구성 설정하기

대부분 인증서 관련 부분만 변경하면 될 것 같습니다.

아, 잠깐.

최근 NGINX 구성 관리 방식이 변경되어 해당 부분이 다른 파일에 위치하게 된 것 같습니다:

   # 모든 호스트를 메인 도메인 이름으로 리다이렉트하지 않음
    - replace:
        filename: "/etc/nginx/conf.d/discourse.conf"
        from: /if \(\$http_host[^\}]*\}/m
        to: ""

네. 새로운 위치는 다음과 같습니다:

해당 파일명을 /etc/nginx/conf.d/outlets/server/20-https.conf로 변경하면 리다이렉트 문제가 해결될 것이라 생각합니다. 인증서 요청 방식에 대한 변경 사항도 적용해야 하지만, 현재 잘 작동하고 있다면 변경할 필요가 없을 수도 있습니다.

2개의 좋아요

@pfaffman 감사합니다! 아직 작동하지 않네요. 아마도 저도 인증서 제한에 걸린 것 같아서, 설정 파일을 수정해서 다시 빌드하고 있어요…

이제 프록시 관련해서 공부해볼게요 :sob:

1개의 좋아요

그렇다면 목록에 서브도메인(그리고 DNS 레코드)을 하나 더 추가하면 새로운 속도 제한이 시작됩니다.

2개의 좋아요

아마도 브라우저 캐시에 또 속은 것 같습니다 :face_with_spiral_eyes: 어쨌든 해당 서버를 Caddy를 리버스 프록시로 사용하는 기본 멀티사이트 구성으로 전환했습니다. 결국 이 방식도 직관적이고, 실제로 마음에 드는 점은 각 도메인에 대해 개별 인증서가 발급된다는 것입니다(모든 도메인이 하나의 인증서를 공유하는 것이 아니라).

업데이트해야 할 서버가 하나 더 있는데, 그 서버에서는 필요한 조치가 무엇인지 확인하기 위해 다른 시도로 설정을 조정해 볼 예정입니다.

다시 한번 감사합니다!

2개의 좋아요

데이터베이스에는 for 루프를 사용하는 것이 더 좋다고 생각합니다. 코드가 훨씬 깔끔해집니다.

hooks:
  after_postgres:
    - exec: |
        for db in two_db thirdsite_db; do
          sudo -u postgres createdb "$db" || true
          sudo -u postgres psql "$db" -c "grant all privileges on database $db to discourse;"
          sudo -u postgres psql "$db" -c "alter schema public owner to discourse;"
          sudo -u postgres psql "$db" -c "create extension if not exists hstore;"
          sudo -u postgres psql "$db" -c "create extension if not exists pg_trgm;"
        done
1개의 좋아요