FileRun ReverseProxy 사용 시 무한로딩현상 해결하기.
안녕하세요 달소입니다. ㅎㅎ
파일런을 앞서 설치하고나서 기본적으로 필수적인것들을 테스트하는데
도메인 연동하고 NPM으로 리버스프록시를 사용하니 로그인이 안되더군요..
구글링하다가 해결법을 찾아서 공유합니다.
기본적으로 로고도 안떠서 느낌이 쎄 했습니다..ㅎㅎ
문제는 아래와같습니다.
FileRun은 원래 HTTP 요청(역방향 프록시가 아닌 브라우저에서 만든 요청)이 HTTPS를 통해 수행되었는지 감지하여 그에 따라 URL을 조정합니다. "HTTP_X_FORWARDED_PROTO", "HTTP_X_FORWARDED_PORT", "HTTP_X_FORWARDED_SSL" HTTP 헤더 중 하나를 검색하여 이를 수행합니다.
역방향 프록시가 이러한 헤더를 전달하지 않으면 FileRun은 사용할 URL이 HTTP인지 HTTPS인지 알 수 있는 방법이 없습니다.
예약 프록시를 변경하지 않으려면(HTTPS를 통해 더 많은 웹 리소스에 액세스하려는 경우 가장 좋은 방법임) URL을 FileRun에 강제로 공급할 수 있습니다.
해결방법
제가 docker로 설치한것 기준으로 해결방법을 공유드리나 Native 역시 해당 폴더에 config.php 파일만 만들어주면되기때문에 크게어려움은 없습니다.
먼저 터미널로 들어가서 컨테이너 내부쉘로 진입합니다.
제 컨테이너 이름은 filerun_web_1 입니다.
내부쉘로 진입하는 커맨드는
docker exec -it filerun_web_1 /bin/bash
가 되겠지요.
그리고 /var/www/html/customizables/ 에 config 파일을 만들어서 도메인을 제대로 인식시켜주겠습니다.
vi /var/www/html/customizables/config.php
<?php $config['url']['root'] = 'https://[filerun도메인]/'; ?>
예를들어 내부 서비스가 192.168.1.60이고 filerun.svrforum.com 으로 도메인을 설정하시려면
https://filerun.svrforum.com/으로 하시고
내부 서비스가 192.168.1.60/filerun이라면 https:/filerun.svrforum.com/filerun/ 이렇게 해주시면됩니다.
그리고 다시 도메인으로 접근해서 로그인을 해보시면 잘되시는걸 확인하실 수 있습니다.
(안보이던 로고도 잘보입니다 ㅎ)
로그인 파일 업/다운로드 다 잘됩니다 ㅎㅎ
참조 : https://feedback.filerun.com/en/communities/1/topics/568-mixed-content-alert-while-access-filerun-behind-nginx-reverse-proxy#comment-1869
시놀 기본npm쓰면 문제 없을거 같은데요.
여러번 삭제 설치 해봤지만 시놀에서 격어보지 못했어요.
흠... 그렇군요.. 최초 설치이긴한데 https://docs.filerun.com/docker-ssl
공식 문서에서도 NPM을 사용하더라구요.
설치환경자체가 공식문서를 참조한거라서 제가 별다르게 셋팅은 한게없는지라..ㅎㅎ
3년전 해결방법이지만 이걸로해결했습니다.
https://feedback.filerun.com/en/communities/1/topics/568-mixed-content-alert-while-access-filerun-behind-nginx-reverse-proxy#comment-1869
오우 좋은 팁이네요!
cmt alert