처음으로 만들어본 Web Management Console 을 소개합니다!

제가 콘테스트 사이트를 새롭게 만들기 전에 이전 콘테스트 사이트에서 불편한 점이 몇개 있었습니다. 첫번째로 클라이언트가 풀 문제를 매 시간마다 올라옥 해야 하는데 그걸 관리자가 수동으로 처리한다는 점입니다. 두번째론 XE,Wordpress 처럼 관리 페이지가 콘테스트 대회랑 같은 디렉토리에 있고 콘테스트 홈페이지 경로를 변경해주면 관리자 접속 페이지가 나오는 방식이였습니다. 이 방법은 관리자가 관리페이지로 들어가는대는 편하지만 관리자용 페이지 소스를…

더 보기

Error=”HTTP request failed: Get “http://host.docker.internal:8080/\”: dial tcp: lookup host.docker.internal on 127.0.0.11:53: no such host” 해결

문제 Docker 기반의 WordPress 서비스를 Production 에 올릴 때 아래와 같은 에러가 나오고 Docker -> Docker 연결에 문제가 생겼다. traefik error=”HTTP request failed: Get \”http://host.docker.internal:8080/\”: dial tcp: lookup host.docker.internal on 127.0.0.11:53: no such host” 분명 MacOS 와 Windows 에서는 잘 되었지만 Ubuntu 같은 Linux 환경에 올라가니 문제가 발생했다. 해결방법 Docker Compose 기준으로 아래와 같은 옵션을…

더 보기

[Node js] 서버 에러 발생시 텔레그램으로 오류 내용 받는방법

웹 프로젝트를 운영하다 보면, 사용자의 요청에 예기치 않게 오류가 발생할 때가 있습니다. (null , undefined 처리 안함, 코드 오류 등) log를 실시간으로 보고 있으면 바로 에러코드를 보고 문제를 해결할 수 있지만, 현실적으로 하루종일 로그만 처다보고 있을수만은 없으니까요. 이번시간에는 텔레그램 API를 활용하여 봇으로 서버 에러 발생 시 해당 에러를 텔레그램 메세지로 전송하여 바로 에러 내용을 알…

더 보기

[프로젝트] 학교 무료 VPN – Hansei VPN 을 소개합니다!

2019년 말부터 운영해온 한세 VPN에 대해서 소개볼까 합니다. Hansei VPN 둘러보기 Hansei VPN을 만든 이유 저의 학교에서 무료 VPN 서비스를 시작한 이유는 아래와 같이 크게 4 가지 입니다. 1.기존 Softether VPN Gate 에서 사용하다 계정 해킹사고(메일로 날라온 아이피랑 VPN연결 시 연결했던 아이피랑 같음) 가 일어나 만들기로 함 2.기존에 “한빛”이라는 페이지가 있었지만, 2019년 말에 갑작스럽게 종료되어…

더 보기

[Nginx] 엔진엑스로 CDN(Content Delivery Network)서버 구축 하기

이전시간에는 엔진엑스로 다운로드 서버를 구축해 보았습니다. 파일 다운로드 서버를 구축하고 싶은 분들은 [Nginx] 파일 및 사진 다운로드 서버 만들기 및 다운로드 속도 제한 방법 글을 참고하시기 바랍니다. CDN서버란? 이 글을 시작하기 전에 CDN 이란 무엇인지 가볍게 알아보겠습니다.CDN 서버란? Content Delivery Network 의 약자로 사용자에게 웹 콘텐츠를 효율적으로 제공할 수 있는 서버의 분산 네트워크입니다 CDN서버를 사용하는…

더 보기

[Ubuntu]웹파일 , 데이터베이스 Dump 파일을 FTP 서버로 전송하는 스크립트 만들기

오늘은 매 시간마다 웹 파일 , 외부,내부에 있는 Mysql/MariaDB 데이터베이스에 덤프 파일을 생성하여 FTP 서버에 자동으로 백업하는 스크립트를 공유하려 합니다. 백업 스크립트가 필요한 이유 왜 매 시간에 저 파일들을 백업하는 스크립트가 필요할까요? 이유는 간단합니다. 클라우드 서버같은경우엔(마이크로소프트의 애저, 구글의 클라우드, 아마존의 AWS 등), 미러링 서버가 상시 대기중이고 24시간 관제 + 유지보수 장비가 아주 잘 되어있기 때문에…

더 보기

[Ubuntu] crontab(스케줄러)를 이용하여 같은 시간에 앱 또는 스크립트를 실행시키기

오늘은 리눅스에 있는 Crontab 에 대해서 사용하는 방법을 설명드리겠습니다. 먼저 crontab 이란 특정 시간에 주기적으로 그 명령, 스크립트 등을 실행할때 정말 많이 사용하는게 crontab 입니다. 예를 들어 백업 스크립트, 특정 Node 서버 재시작, 인증서 갱신 등 과닐자가 수동으로 명령어를 입력하여 해결할 수도 있지만, 그렇게 되며 매번 명령을 입력할때마다 서버에 접속하여 일일이 입력해줘야 하는 불편함이 생깁니다….

더 보기

[Maria DB] 우분투 마리아DB 설치 방법

우분투에 Mysql(Maria DB) 서버를 설치해 보겠습니다. 만약 윈도우에 마리아 DB를 설치하실 분들은 아래 글로 이동하여 설치해 주세요. [Maria DB] 마리아 DB 설치하기 (Windows) 터미널을 열어줍니다. 우선 sudo apt update -y && sudo apt upgrade -y 를 입력하여 패키지를 업데이트해 줍니다. 업데이트가 끝났다면 마리아 DB를 설치해 줍니다. sudo apt install mariadb-server Y를눌러 계속 진행해 줍니다. (sudo…

더 보기

[Ubuntu 팁]우분투 에서 LTE모뎀 , WI-FI 활성화 및 비활성화 방법(20.04)

우분투를 사용하다가 버전 업그레이드를 한 뒤 WWAN 을 사용하려 할 때”광대역 네트워크 사용 안함” 문구가 뜨고 수동으로 켜지지도 않는 문제가 발생하였다. 처음에는 em7345 모뎀이 버전 업그레이드 후, 호환되지 않는 줄 알았지만, 의외로 간단한 문제였다. 광대역 모뎀. 즉 LTE 모뎀을 소프트웨어 적으로 켜는 명령어는 wwan on/off 로 광대역 모뎀을 껏다 켰다 할 수 있었던 것이다. 버전이…

더 보기

[React] string 값을 html 로 렌더링 하여 불러오는 방법

리엑트에서 html 태그가 있는 글을 출력하면 아래와 같이 나옵니다. 리엑트에서는 XSS 공격을 사전에 방지하기 위해 HTML 태그 , JS 문법은 모두 escape 시키기 때문에 html 태그가 읽히지 않습니다.그러나 DB 나 다른 파일에서 HTML 문서 또는 내용을 불러와야 될때가 있습니다.이럴때 사용하는 함수가 dangerouslySetInnerHTML={?{__html:?}?} 함수입니다. 이 문법을 적용하고 기존에 있던 코드를 삭제하였습니다. 그리고 dangerouslySetInnerHTML={?{__html: this.state.des?}?} 로 변경하였습니다….

더 보기