TIL/General

AWS Lightsail을 이용한 Bitnami Ghost 블로그 HTTPS 적용 시, Mixed Content 에러

asvv 2023. 4. 27. 22:14

AWS Lightsail에서 Ghost 생성

Lightsail에서 Ghost 블로그를 빠르게 만들게 만들 수 있는 Blueprint가 있으며 친절한 가이드도 있다. Ligthsail에서는 GhostApache를 사용하여 인스턴스를 구성한다.

Blueprint

HTTPS 적용 시, Mixed Content 에러

친절한 가이드를 보면 Lightsail에서 bncert-tool를 이용하여 HTTPS 인증서를 발급한다. 인증서를 발급하면 해당 도메인에 바로 적용된다.

하지만 문제는 이미지 링크 혹은 관리자 페이지에서 미리보기 등 여러 곳에서 http로 요청을 하여 Mixed Content 에러가 발생한다. Chrome에서 HTTPS 사이트에서 HTTP 요청을 하여 안전하지 않은 컨텐츠로 인식하여 Chrome 자체적으로 막는다.

에러 수정 방법

발생한 에러를 수정하는 방법은 ghost config 파일의 URL을 수정하고, httpd-app.conf 파일을 수정해야 한다. 일단 먼저 ghost를 중지 시킨다.

sudo /opt/bitnami/ctlscript.sh stop

Ghost config 파일 수정

cd /opt/bitnami/ghost
sudo chmod 777 config.production.json
ghost config url "https://yourdomain.com"

아니면 직접 수정도 가능하다.

cd /opt/bitnami/ghost
sudo vim config.production.json
{
    ...
    "url": "https://yourdomain.com",
    ...
}

httpd-app.conf 파일 수정

해당 파일은 bncert-tool을 사용하여 인증서를 만들어야 생긴다.

cd /opt/bitnami/apps/letsencrypt/conf
sudo vim httpd-app.conf

RequestHeader set X-Forwarded-Proto "https" 라인을 추가한다.

RequestHeader set X-Forwarded-Proto "https"
<Directory "/opt/bitnami/apps/letsencrypt/.well-known">
...
</Directory>

Ghost 재시작

sudo /opt/bitnami/ctlscript.sh start

이렇게 하면 Mixed-Content 에러는 해결된다

참고

https://www.codymd.com/setting-up-ghost-blog-on-google-cloud-services/

반응형

'TIL > General' 카테고리의 다른 글

Frida & HTTP Toolkit 이용한 Android SSL Pinning  (0) 2023.10.25
[VS Code] 한글 폰트 변경  (0) 2023.04.25
APK Decompile for MacOS  (0) 2023.04.18