• 목록
  • 아래로
  • 위로
  • 4
  • title: 크롬NUBE
  • 조회 수 198

라이믹스에서는 모듈이나 애드온으로 서버 로그를 확인하기 쉬웠는데 NodeBB에서는 nginx 로그를 그대로 보여주다보니 하나하나 확인하기가 어렵더라구요.

해결책으로 goaccess라는 nginx 로그를 분석 툴을 설치했습니다.

다른 분석 툴도 많긴 한데 대부분 php를 사용하는 툴들이라... php를 추가로 설치하고 싶지 않아서 goaccess를 사용 중입니다.

 

분석한 내용을 html 파일로 출력하는 기능이 있어서 crontab으로 10분마다 갱신이 되게 설정했고, 출력된 html 파일에 링크를 지정해서 http://도메인.com/log/report.html 에 접속하면 확인할 수 있게 nginx 서버 블록에서 설정을 해줬습니다.

 

11.JPG

 

문제는.. 이럴 경우 http://도메인.com/log/report.html 경로로 접속하면 누구나 이 화면을 볼 수 있습니다.

NodeBB 외부의 파일이기 때문에 NodeBB에서는 이 파일의 접근 권한을 설정할 수가 없쥬..

 

그래서 이 파일 자체에는 접근 가능한 링크를 지정하지 않고, NodeBB 내에서 관리자만 접근 가능한 빈 페이지를 생성해서 iframe처럼 해당 파일의 내용을 불러오는 방법은 없을까 궁금합니다.

예를 들면 /var/www 폴더에 저장할 경우 report.html로 바로 접속이 가능한 링크가 없는 상태인데, 그런 상태의 파일을 불러오는 거죠.

 

12.JPG

 

현재는 이렇게 관리자만 접근 가능한 페이지에 iframe으로 삽입했는데, iframe으로 넣으면 어차피 소스에서 원본 파일 경로(http://도메인.com/log/report.html)가 다 보이기도 하고..

사이트 내에 다른 페이지에는 원본 파일로 연결된 링크가 없지만 요즘 사이트에 이상한 ip로 접속한 기록이 많다보니 어떻게든 찾지 않을까 싶어서 걱정이 되네요.

포함 2명이 추천

추천인 2

댓글 4

YGL
노드에서 페이지에 표시할 내용을, 외부에 공개되지 않은 로컬 파일을 읽어 보여준다는 것인지요?
제가 제대로 이해한 것이라면 노드의 내장 기능인 fs 파일 시스템을 이용하면 됩니다.
comment menu
2021.03.24. 02:02

신고

"YGL님의 댓글"

이 댓글을 신고 하시겠습니까?

title: 크롬NUBE 작성자 → YGL
profile image
+1
네 맞습니다!

본문 이미지에서 iframe을 넣은 빈 페이지는 NodeBB 자체 기능이 아니고 플러그인을 통해 추가한 페이지라서, 해당 플러그인에서 report.html 파일을 fs 모듈로 불러오게 하면 코어는 수정하지 않아도 되겠네요.

YGL님께서 알려주신 방법과 OAUTH2님께서 알려주신 방법 둘 다 좋은 방법이라 두 방법 모두 시도를 해봐야겠어요ㅎㅎ
댓글 감사합니다!
comment menu
2021.03.24. 08:28

신고

"NUBE님의 댓글"

이 댓글을 신고 하시겠습니까?

OAUTH2

nginx http auth request를 관리라 화면으로 설정하면 될듯 합니다.

https://nginx.org/en/docs/http/ngx_http_auth_request_module.html

comment menu
2021.03.24. 07:20

신고

"OAUTH2님의 댓글"

이 댓글을 신고 하시겠습니까?

title: 크롬NUBE 작성자 → OAUTH2
profile image
읽어보니 /auth의 응답 코드에 따라 페이지 출력 여부를 결정하는 것 같네요.
권한이 없는 상태에서 관리자 메뉴에 접근하면 로그인 페이지로 redirect 되니까 이 방법으로도 가능하겠네요 ^~^

댓글 감사합니다!
comment menu
2021.03.24. 08:34

신고

"NUBE님의 댓글"

이 댓글을 신고 하시겠습니까?

권한이 없습니다.
번호 제목 글쓴이 날짜 조회 수
공지 [작업 완료] 설 명절 맞이 서버 업데이트 안내 3 마스터 24.02.11.17:21 1010
공지 [중요] 호스팅 만료와 관련하여 일부 수칙이 변경됩니다. 4 마스터 23.01.14.02:23 4685
공지 [필독] 질문하는 방법 17 마스터 18.02.23.03:09 4480
746 Chrome와 Safari의 비밀번호 연동이 가능한가요? 10 갱생협스 20.06.06.21:24 126
745 게임 용어에 대해 질문 드립니다 (탱커/딜러/힐러) 21 이니스프리 20.06.05.20:45 2115
744 AWS elastic inference 끄는 법 아세요? 15 image 국내산라이츄 20.06.03.15:21 181
743 핸드폰 유심이 이상해요. 7 슬기 20.06.01.19:18 214
742 PHP) GetText 사용 관련 1 260578 20.06.01.17:02 236
741 CSS 이미지 창크기에 맞추는 방법 질문! 2 마당쇠15 20.05.31.10:47 313
740 글쓰기 포인트 차감을 우회하여 도배하는 스팸에 대해 질문드려요~! 22 이니스프리 20.05.31.00:25 431
739 파이썬으로 엑셀 데이터와 이미지를 읽어 아래한글로 만드는 매크로 프로그램을 만들고 싶어요. 5 말카 20.05.28.09:56 2260
738 PHP) Sandbox에서 실행한 결과와 실제 서버에서 구동되는게 다릅니다. 6 260578 20.05.28.09:11 125
737 [자바스크립트] 브라우저의 활성화 여부를 서버 측에서 확인할 수 있는가요?? 9 이니스프리 20.05.26.17:16 459
736 AWS Lightsail 관련해서 질문이 있습니다... 24 MYIG 20.05.26.00:18 576
735 셀레니움으로 토르브라우저 조종하고 싶습니다 8 title: 대한민국 국기gimmepoint 20.05.25.22:58 1107
734 공유기 구매하려고 하는데 사양이 고민됩니다. 10 image Apache 20.05.24.21:55 223
733 노트9 케이스 추천을 다시 부탁드립니다 ㅠㅠ 11 이니스프리 20.05.22.21:24 147
732 듀얼 vs 와이드 모니터 질문 드려요~! 17 이니스프리 20.05.21.23:15 952
731 (해결) 4 260578 20.05.18.20:51 142
730 클라우드 플레어 연결 관련 도와주세요 6 image Ruwaku 20.05.18.09:26 339
729 TP-LINK 무선 안테나를 잃어버렸는데 대체제가 있을까요?? 10 이니스프리 20.05.15.23:02 240
728 안드로이드 에뮬레이터 질문 드립니다. 1 Nginx 20.05.14.18:24 227
727 국내 뉴스 API 중에 검색기간 설정이 가능한 것이 있을까요?? 5 이니스프리 20.05.14.00:19 435