Spring Boot - war 프로젝트 배포 및 실행 추가로 개인 포트폴리오 소개 사이트를 제작하면서 스프링부트에서 jsp 파일을 사용했는데, 배포 시 jsp 파일의 위치를 찾지 못하는 문제가 발생했다. 인텔리제이 idea. 에서 작동시에는 문제가 없었기 때문에 당황했지만, 검색해보니 jsp 파일은 war 로 배포해야한다는 내용이 있었다. 1. war 파일 생성 우측 Gradle 에서 bootWar 를 클릭하면 파일이 생성된다. 처음 프로젝트 생성시 jar로 작업했으면 bootWar 가 없을 수 도 있는데 그렇다면 build.gradle에서 추가작업을 해주면된다. 1) plugins 추가 id 'war' plugins { id 'java' id 'war' id 'org.springframework.bo..
이번에 공부하면서 학원에서 네이버클라우드 플랫폼을 활용해 서버에 진행했던 프로젝트를 올리게되었다. 네이버 클라우드에서 제공해주는 해택도 좋아서 서버에 처음 올리는 사람이라면 활용하기 좋을 것 같다. 우선 최초가입시 일정 금액의 쿠폰을 제공하고 있고, 카드 등록 시, classic의 Micro 서버를 1년 동안 무료로 대여해주고 있다. 1. 네이버 클라우드 플랫폼 가입 및 대여 1-1. classic 서버 대여 ubuntu-18.0.4가 기본이라고 한다. 그리고 서버 설정시 설정타입을 standard로 했었는데, 무료로 일년동안 사용하려면, micro 를 선택해야한다. standard는 과금이 될 수 있다. 나는 가입한지가 좀 됐어서 크래닛이 없기때문에 micro 로 선택해주었다. (설치할때 좀더 오래걸리..
채팅 기능 구현을 완료하고 프론트 담당자 분이 프론트와 연결하는 작업을 진행하다가 ` X-Frame-Options ` 오류를 발견해서 이슈 해결 방법을 찾아보게 되었다. 01 . X-Frame-Options 오류 ` X-Frame-Options ` 오류는 처음 보는데 클릭재킹 공격을 막기 위한 설정이라고 한다. frame과 iframe, object 태그 에서의 참조를 제한하는 X-Frame-Options 라는 사양을 제안하고 있다. 주요 브라우저의 최신 버전에 모두 적용이 되어 있다. 위의 태그들을 렌더링 해야하는지 막아야하는지를 알려준다. X-Frame-Options의 값은 3가지가 있다. DENY : 해당 페이지는 frame 내에 표시할 수 없다. SAMEORIGIN : 해당 페이지와 동일한 org..
프로젝트 시작 전, 웹소켓과 프론트를 연결하는 기술에 대해 미리 알아보고 습득했는데, 강사님께서 도움이 될만한 강의를 추천해주셨다 . 노마더코드 줌 구현으로 채팅 기능이 포함이 되어 있다고 하여 프론트 맏으신 분과 함께 내용을 빠르게 들어 보았다. 일단 작업 환경은 조금 달랐는데 프론트와 백앤드 모두 node.js에서 이루어지고 있었다. 강의 속에서 여러 기술들을 소개하고 다루는 방법에 대해 알려주었다. 각 기술들의 장점과 단점에 대해 정리하고 더 맞는 방법을 찾아보다가 프론트에서는 SockJs를 사용하기로 하였다. 1. 채팅 사용기술 정리 - 프론트 1-1. WS 강의에서는 WS와 Socket.io 를 다루고 있었다. 먼저 WS는 websocket 이 기본 브라우저에서 제공하는 기능으로 따로 설치가 없..
채팅 기능과 연관되어 있는 알림기능과 파일도 분석하고 DB 설계작업을 했다. 1. 알림 기능 분석 1-1. 기본기능 유저 각자의 알림이 존재한다. 전달되는 메시지가 존재한다. ( 채팅 , 주문 현황에 대해 알림이 전송된다.) 그 메시지와 연관된 사람이 존재한다. 1-2. 추가기능 알림을 선택시 해당 페이지로 이동할 수 있다. 전체 알림을 확인 할 수 있다. 메일로 알림을 확인 할 수 있다. 1-3. 필요한 내용 받는 사람 / 보낸사람 / 알림 숫자 / 알림 구분 (어떤 알림인지) / 메시지 / 이동하는 페이지 / 알림 확인여부 / 받는사람 타입 ( 주문의경우 , 주문받는 사람인지 주문하는 사람인지 구분) 받는 사람 : 본인 보낸사람 : 닉네임 (입장) 일반 유저 : 작가 / 작가 유저 : 주문자 알림 구..