turin's blog

만들고, 터지고, 기록합니다

풀스택, Flutter, 서버 운영, SEO, 배포 삽질을 실제 프로젝트 기준으로 정리합니다. 검색해서 들어온 사람이 바로 쓸 수 있는 체크리스트와 명령을 남기는 게 목표입니다.

1175published
8topics
kopractical notes

자주 다루는 주제

주제별로 빠르게 훑어보기

웹 개발350Next.js283서버 운영165Docker110API80TypeScript58DB50Flutter39

전체 글

운영 중 부딪힌 문제를 검색 의도에 맞춰 정리

웹 개발

동적 라우트 배포할 때 확인할 사항들

Next.js나 다른 프레임워크의 동적 라우트가 프로덕션에서 404를 반환할 때 문제 해결 방법.

·2분 읽기
Next.js2분 읽기

Next.js 서버 액션이 로컬에서는 되는데 서버에서 실패할 때

환경 변수, 파일 경로, 패키지 의존성 차이로 인한 빌드 또는 실행 오류를 진단하는 방법.

계속 읽기 →
웹 개발2분 읽기

마이그레이션 중 사용자에게 영향 없이 진행하기

데이터베이스나 프레임워크 버전을 업그레이드할 때 이미 접속 중인 사용자에게 문제가 없도록 하는 방법.

계속 읽기 →
웹 개발2분 읽기

배포 후 페이지 캐시 문제 해결하기

배포했는데 사용자가 계속 이전 버전을 보거나 페이지가 느려질 때 캐시 문제를 진단하는 방법.

계속 읽기 →
Next.js2분 읽기

Next.js 서버 액션이 SEO에 영향을 미치지 않도록 하기

동적 콘텐츠를 생성하는 서버 액션을 사용할 때 검색 엔진 최적화와 메타 태그 관리 방법.

계속 읽기 →
웹 개발2분 읽기

로그인 상태 초기화되는 문제 안전하게 해결하기

사용자가 갑자기 로그아웃되거나 필터 설정이 사라지는 문제의 원인을 찾고 고치는 방법.

계속 읽기 →
웹 개발2분 읽기

useEffect 의존성 배열 체크리스트

useEffect에서 의존성 배열을 잘못 설정해서 발생하는 버그들을 미리 잡아내는 방법.

계속 읽기 →
웹 개발1분 읽기

502 Bad Gateway 에러 해결하기

Nginx와 애플리케이션 서버 사이 연결 문제로 나타나는 502 에러를 진단하고 고치는 방법.

계속 읽기 →
서버 운영1분 읽기

301 리다이렉트가 제대로 작동하지 않을 때

오래된 URL에서 새 URL로의 리다이렉트가 작동 안 할 때 DNS부터 Nginx 설정까지 확인하는 순서.

계속 읽기 →
웹 개발1분 읽기

VPS 운영하면서 메모리 문제 진단하는 법

메모리 부족으로 서버가 느려지거나 프로세스가 죽을 때 어디서부터 봐야 할까.

계속 읽기 →
웹 개발1분 읽기

권한 체크를 안전하게 변경하기

권한 관련 코드를 수정할 때 기존 사용자는 잠기고 새 사용자는 접근 못 하는 상황을 피하는 법.

계속 읽기 →
Next.js1분 읽기

React에서 조건부 렌더링이 제대로 작동하지 않을 때

로컬에서는 정상이던 조건부 렌더링이 실제 배포 환경에서 이상하게 작동할 때 어디를 봐야 할까.

계속 읽기 →
API3분 읽기

API가 점점 느려질 때 performance를 생각해보자

API 응답이 100ms에서 500ms로 느려지는 건 보통 데이터베이스 쿼리 성능 때문이다. 인덱스와 쿼리 최적화가 필요하다.

계속 읽기 →
Next.js3분 읽기

Next.js 배포 후 메타데이터가 이상할 때

블로그 글의 제목, 설명, OG 이미지가 SNS에서 제대로 안 보인다면, 메타데이터 태그를 확인해야 한다.

계속 읽기 →
서버 운영2분 읽기

서버 로그가 너무 커지면 디스크가 찬다

서버의 로그 파일이 계속 쌓이다 보면 디스크 공간이 부족해진다. 로그 로테이션 설정으로 자동 정리할 수 있다.

계속 읽기 →
Next.js2분 읽기

Next.js 빌드에서 페이지가 누락된 경험

Next.js 빌드 후 특정 페이지가 없다고 하면, 빌드 로그를 먼저 자세히 확인해야 한다. 빌드 경고나 에러가 숨어 있을 수 있다.

계속 읽기 →
웹 개발2분 읽기

앱 버전을 올렸는데 실제로는 올라가지 않았을 때

배포했는데 사용자들이 여전히 이전 버전을 보고 있다면, 캐시나 버전 태그를 확인해야 한다.

계속 읽기 →
서버 운영2분 읽기

운영 서버에서만 앱이 안 돌 때

로컬에서는 완벽한데 서버에서는 에러가 나면, 서버의 시간대나 권한, 디스크 용량을 먼저 확인해야 한다.

계속 읽기 →
웹 개발2분 읽기

배포 전에 데이터베이스 제약을 꼭 확인하자

unique 제약이나 foreign key 때문에 배포 후 데이터 입력이 실패할 수 있다. 배포 전 마이그레이션을 검토해야 한다.

계속 읽기 →
Docker2분 읽기

Docker 이미지 배포 후 문제가 생겼을 때

컨테이너 배포 후 앱이 안 되면, 먼저 컨테이너가 실제로 시작됐는지, 로그에 에러가 있는지 확인해야 한다.

계속 읽기 →
API2분 읽기

권한 때문에 API 요청이 막혔을 때

특정 사용자는 API를 호출할 수 없을 때는, 토큰 권한과 리소스 소유권을 함께 확인해야 한다.

계속 읽기 →
웹 개발2분 읽기

배포 후 문제가 생겼을 때 원인 찾기

로컬에서는 멀쩡한데 배포 환경에서만 문제가 나면, 환경 설정의 차이를 먼저 확인해야 한다.

계속 읽기 →
웹 개발1분 읽기

웹앱 메모리 누수를 찾는 순서

메모리 사용량이 점점 늘어나면 처음부터 뭔가 잘못됐을 거라고 가정하지 말고, 순서대로 확인해야 한다.

계속 읽기 →
API2분 읽기

API 검증 실패를 빨리 찾아내는 법

API 요청이 validation에서 막힐 때는 요청 전체를 먼저 봐야 한다. 인증부터 확인하고, 응답 메시지로 원인을 좁혀가는 방식이다.

계속 읽기 →