테스트 사이트 - 개발 중인 베타 버전입니다

그누보드6 실서버 배포 후 채택완료

shunrises 1년 전 조회 2,145

</p>

<p>Mixed Content: The page at '<a href="https://도메인/board/write/main_product/1?page=2'" target="_blank" rel="noopener noreferrer">https://도메인/board/write/main_product/1?page=2'</a> was loaded over HTTPS, but requested an insecure XMLHttpRequest endpoint '<a href="http://도메인/editor/ckeditor4/upload?type=Images&responseType=json'." target="_blank" rel="noopener noreferrer">http://도메인/editor/ckeditor4/upload?type=Images&responseType=json'.</a> This request has been blocked; the content must be served over HTTPS.</p>

<p>

 

안녕하세요.

AWS lightsail, ubuntu를 이용해 기존에 갖고 있던 도메인을 연결하여 배포하였습니다.

nginx를 이용하여 설정을 완료하였고, 팁자료실에 올려 주신 nginx ssl 인증서 생성 방법도 따라 하였습니다.

도메인이 https로 잘 연결이 되지만,

admin이나 게시판 form의 업로드나, submit 버튼을 누르면 이런 식으로 http endpoint로 가는 것 같은데, 혹시 어떻게 하면 이것을 해결할 수 있을지 알 수 있을까요?

 

셀프 해결했습니다. main.py의 BaseSchemeMiddleware을 아래와 같이 수정했습니다.

 

</p>

<p>request.scope["scheme"] = request.headers.get("X-Forwarded-Proto", "https")</p>

<p>

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

1년 전

ㅎㅎ 덕분에 https 부분 해결 되였습니다.

허나 현재는 

core > middleware.py 맨 하단에 있습니다.

</p>

<pre>
class BaseSchemeMiddleware(BaseHTTPMiddleware):
    async def dispatch(self, request: Request, call_next):
        # X-Forwarded-Proto 헤더를 통해 클라이언트가 사용하는 실제 프로토콜을 결정합니다.
        request.scope["scheme"] = request.headers.get("X-Forwarded-Proto", "http")
        return await call_next(request)</pre>

<p>

로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

s
shunrises
1년 전
오오. 감사합니다!
앨리스a
1년 전
덕분에 해결했습니다

댓글을 작성하려면 로그인이 필요합니다.

역시 config 로 설정이 있는게 나았으려나요

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

s
shunrises
1년 전
config가 있다면 조금 더 편할 것 같습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인