All
![[Nginx] 파일 접근 시 Permission denied 오류 해결](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fdmfu1G%2FbtsMwqdvyn4%2FlzOQyE7B4IeSOuKk6jwTKK%2Fimg.png)
[Nginx] 파일 접근 시 Permission denied 오류 해결
nginx를 설치하고 실행해보는 작업을 진행하는 중에 발생한 오류이다.🤔 문제 상황서버 내 특정 경로에 있는 이미지를 가져올 수 있도록 nginx에서 루트 경로 설정을 한 뒤 브라우저에서 해당 이미지를 조회하니, 아래와 같이 403 에러가 발생하였다. ✍🏻 접근 방식nginx의 error.log 파일을 확인해보니 아래와 같이 Permission Denied 가 출력되어있다. [error] 7781#0: *18 open() "/nas/error.html" failed (13: Permission denied), client: {접근 IP}, server: {접근 Host}, request: "GET /favicon.ico HTTP/1.1", host: "{서버 IP}", referrer: "https:..

Cookie (feat. JWT Token, SSO)
단일 서비스의 사용자 인증 기능을 위해 동작하던 "사용자 인증 애플리케이션"에서다수 서비스의 사용자 인증 기능을 제공하는 서버로 동작해야함과 동시에해당 서버를 통해 인증된 사용자는 사내 다른 서비스에 접속시에도 로그인 상태를 공유해야했기 때문에 SSO 기능까지 가능하도록 구현해야했습니다. 어떤 방식으로 구현할 지 고민한 내용 중 JWT 토큰을 저장할 위치와 관련하여 "쿠키" 에 대해 알아본 내용들을 정리합니다. SSO 기능을 제공하려면 크게 두가지 요구사항이 있었습니다.1) 로그인 후, 새 탭에서 접속했을 때에도 로그인이 되어야 한다.2) 서브 도메인이 같으면 인증 토큰이 공유되어야 한다. (단, 다른 서브 도메인에 접속 시에는 쿠키가 전달되지 않는다.) 기존 "사용자 인증 애플리케이션"은 사용자 인증 ..
![[SQL, 프로그래머스] 주문량이 많은 아이스크림들 조회하기](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdFlHG8%2FbtsH15Ye5p4%2F55SSN3ctmarpzy6zq6oLC0%2Fimg.png)
[SQL, 프로그래머스] 주문량이 많은 아이스크림들 조회하기
Lv4 '주문량이 많은 아이스크림들 조회하기' 문제를 풀어보았습니다.구체적인 프로그래머스 문제는 링크 참고 바라며, 문제는 간략히 설명합니다. 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 사용할 테이블 정보두 테이블 모두 아이스크림 가게의 주문 정보를 담은 테이블입니다.first_half 테이블은 상반기의 아이스크림 주문 정보를 담은 테이블. (flavor 칼럼이 기본 키, shipment_id 칼럼이 july 테이블의 shipment_id의 외래 키)july 테이블은 7월의 아이스크림 주문 정보를 담은 테이블입니다. 7월에는 워낙 아이스..
예외(Exception) 처리
적절한 예외 핸들링은 애플리케이션에 필수적이지만 생각보다 중요성을 간과할 수 있는 부분이라 생각합니다.이 글에서는 예외를 다룰 때마다 고민했던 포인트들과 예외를 처리하고 생성하는 Best Practice에 대해 정리합니다.1) 예외 처리 (Handling Exceptions) 할 때메서드가 에러로 인해 완료되지 않았을 때 상태를 복구한다.메서드에서 예외가 발생했을 때, 호출자는 부작용이 없다고 가정할 수 있어야 합니다. 계좌 이체 코드 (한 계좌에서 출금하고 다른 계좌에 입금하는 코드)를 예로 들면,출금 로직은 정상적으로 성공했는데 입금 로직에서 예외가 발생하면, 출금이 그대로 완료되지 않도록 해야 합니다. 이를 위해 처리할 수 있는 방안은, 입금 거래 과정 중 한 곳이라도 예외가 발생하면 그전에 정상적..
![[SQL, 프로그래머스] 상품 별 오프라인 매출 구하기](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdkGOkl%2FbtsHTVafRtn%2FZf5wL17Z5NieBW8r2LhuF1%2Fimg.png)
[SQL, 프로그래머스] 상품 별 오프라인 매출 구하기
프로그래머스에 여러 문법들을 활용해서 SQL 쿼리문을 짜볼 수 있도록 다양한 문제들을 레벨 별로 제공하고 있습니다.Lv2 '상품 별 오프라인 매출 구하기' 문제를 풀어보았습니다.프로그래머스 문제 링크 참고 바라며, 문제는 간략히 설명합니다. 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 사용할 테이블 정보어느 의류 쇼핑몰에서 판매중인 상품들의 상품 정보를 담은 PRODUCT 테이블과오프라인 상품 판매 정보를 담은 OFFLINE_SALE 테이블이 있으며,두 테이블 모두 product_id 칼럼을 가지고 있습니다.생각의 과정product 테이블과 offline_..
![[SQL, 프로그래머스] 조건에 맞는 도서와 저자 리스트 출력하기](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F87RCc%2FbtsHSCCFJVC%2FYjKBvG2TQvZKk3nVuXj5ZK%2Fimg.png)
[SQL, 프로그래머스] 조건에 맞는 도서와 저자 리스트 출력하기
프로그래머스에 여러 문법들을 활용해서 SQL 쿼리문을 짜볼 수 있도록 다양한 문제들을 레벨 별로 제공하고 있습니다.Lv2인'조건에 맞는 도서와 저자 리스트 출력하기' 문제를 풀어보았습니다.프로그래머스 문제 링크 참고 바라며, 문제는 간략히 설명합니다. 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 사용할 테이블 정보어느 한 서점에서 판매중인 도서 정보를 담고 있는 book 테이블과 저자 정보를 담고 있는 author 테이블이 있으며,두 테이블 모두 author_id 값을 갖고 있습니다.고민 과정book 테이블에 있는 정보와 author 테이블에 있는 정보를 ..