plzhans blog

개발하며 부딪힌 문제들을 기록합니다

게임·플랫폼 백엔드 엔지니어 손원철이 실제로 운영하는 서비스들에서 나온 인프라·백엔드 이야기입니다.

블로그 보러가기 →
Popular

인기 블로그 글

Mac Office 정품인증 방법 | 볼륨 라이선스 VL Serializer로 LTSC 설치
2026-06-17 Mac Office 정품인증 방법 | 볼륨 라이선스 VL Serializer로 LTSC 설치

Mac에서 Microsoft Office를 볼륨 라이선스로 설치하고 정품 인증을 활성화하는 절차를 정리한다. LTSC 설치 파일 선택부터 VL Serializer 적용과 인증 확인 방법까지 한 번에 안내한다.

더 읽기 →
네이버 지도 Open API 인증 실패(200) 해결: ncpClientId에서 ncpKeyId로 변경
2026-03-24 네이버 지도 Open API 인증 실패(200) 해결: ncpClientId에서 ncpKeyId로 변경

네이버 지도 Open API에서 Authentication Failed(200) 오류가 나는 원인을 정리합니다. 콘솔 통합으로 ncpClientId·govClientId·finClientId가 ncpKeyId로 바뀜 점과, 포트·URI를 제외해야 하는 웹 서비스 URL 등록 규칙까지 확인하세요.

더 읽기 →
Synology DSM 무료 SSL 인증서 발급 방법 | acme.sh + Cloudflare DNS로 Let’s Encrypt 자동 갱신
2026-05-16 Synology DSM 무료 SSL 인증서 발급 방법 | acme.sh + Cloudflare DNS로 Let’s Encrypt 자동 갱신

Synology DSM에서 acme.sh와 Cloudflare DNS 인증으로 Let’s Encrypt 무료 SSL 인증서를 발급하고 자동 갱신하는 방법을 정리한다. synology_dsm deploy-hook 설정과 2FA 및 Hostname 오류 해결까지 안내한다.

더 읽기 →
HTTPS TLS/SSL 무료 vs 유료 인증서
2026-02-06 HTTPS TLS/SSL 무료 vs 유료 인증서

HTTPS 구축 시 필요한 TLS/SSL 인증서 발급·검증 흐름과 무료(ACME/Let’s Encrypt)·유료·클라우드 관리형 옵션을 비교합니다. 갱신 자동화와 종단 지점 최소화 전략으로 비용과 운영 리스크를 줄이는 방법을 확인하세요.

더 읽기 →
Claude 계정 스위치 자동화
2026-03-26 Claude 계정 스위치 자동화

Claude Code 계정을 로그아웃 없이 빠르게 전환하는 방법을 정리합니다. macOS Keychain의 인증 정보를 security 명령으로 백업·교체하는 자동화 스크립트와 claudini·CCSwitcher 같은 전용 도구 사용법을 함께 다룹니다.

더 읽기 →
Claude Code를 Ollama 로컬 LLM으로 사용하는 방법
2026-07-03 Claude Code를 Ollama 로컬 LLM으로 사용하는 방법

Claude Code를 Ollama 로컬 LLM으로 연결하는 방법을 설명합니다. Claude 호환 API, 환경변수, 모델 선택, LiteLLM 프록시가 필요한 경우까지 정리합니다.

더 읽기 →
Latest

최근 블로그 글

Garage 설치와 구성 - 도커로 띄우는 S3 호환 오브젝트 스토리지
2026-09-23 Garage 설치와 구성 - 도커로 띄우는 S3 호환 오브젝트 스토리지

missing field s3_region 부터 서명 리전 불일치까지. 도커 컴포즈로 Garage 를 띄워 버킷에 객체를 넣는 데까지.

더 읽기 →
garage-webui 설치 - Garage 클러스터와 버킷을 브라우저에서 관리하기
2026-09-23 garage-webui 설치 - Garage 클러스터와 버킷을 브라우저에서 관리하기

Garage 에 garage-webui 를 붙여 레이아웃·버킷·키를 브라우저에서 관리한다. compose 서비스 하나와 htpasswd 로그인 설정.

더 읽기 →
Cloudflare 로 AI 봇 차단하기 - Managed robots.txt 와 AI Crawl Control
2026-09-16 Cloudflare 로 AI 봇 차단하기 - Managed robots.txt 와 AI Crawl Control

Cloudflare 가 robots.txt 를 대신 써 주고 AI 봇을 엣지에서 차단한다. 어떤 봇이 얼마나 가져갔는지도 보여 준다.

더 읽기 →
robots.txt 로 AI 크롤러 제어하기 - 검색·학습·에이전트를 나눠 허용하는 방법
2026-09-16 robots.txt 로 AI 크롤러 제어하기 - 검색·학습·에이전트를 나눠 허용하는 방법

AI 크롤러 때문에 robots.txt 에 적을 것이 늘었다. 용도별 봇 이름과 Google-Extended 와 Content-Signal 을 정리한다.

더 읽기 →
Sentry 추적 헤더 - 나가는 모든 요청에 붙는 이유와 tracePropagationTargets
2026-09-16 Sentry 추적 헤더 - 나가는 모든 요청에 붙는 이유와 tracePropagationTargets

Sentry 는 나가는 모든 요청에 sentry-trace 와 baggage 를 붙인다. 왜 붙는지와 tracePropagationTargets 로 좁히는 방법.

더 읽기 →
공공데이터포털 API 400 오류 - 헤더에 environment 가 있으면 거부한다
2026-09-16 공공데이터포털 API 400 오류 - 헤더에 environment 가 있으면 거부한다

INVALID_REQUEST_PARAMETER_ERROR 는 파라미터 문제가 아닐 수 있다. data.go.kr 은 헤더 값의 environment= 을 거부한다.

더 읽기 →

블로그 전체 글 보기 →

Services

블로그에서 다루는 서비스들

아래 블로그 글 상당수는 이 서비스들을 만들고 운영하면서 부딪힌 문제를 기록한 것입니다.

About

만든 사람

손원철

게임과 플랫폼 백엔드·인프라를 다루는 서버 엔지니어 손원철이 만든 서비스들을 모아둔 곳입니다. 평소에 필요해서 만든 도구들을 위 서비스들로 공개해뒀습니다. 만들면서 부딪힌 문제와 해결 과정은 블로그에 기록하고 있습니다.

대부분 제가 직접 겪었거나 주변에서 지켜본 어려움에서 나온 도구들입니다. 아이가 아플 때 좋은 병원을 찾아 헤매거나 한국 의료 체계에 낯선 외국인이 어느 병원을 가야 할지 몰라 곤란해하는 모습을 보며 MediFinder를 만들었습니다. 텔레그램 대화를 익명으로(누구 것인지 드러나지 않게) 백업할 방법을 찾다가 마땅한 게 없어서 Telegram Exporter를 만들었습니다. 만들고 나서 다른 사람도 같은 문제를 겪을 것 같으면 그대로 공개했습니다.

이 서비스들을 운영하면서 겪은 인프라·백엔드 문제(서버 구축, 배포 자동화, 보안 설정, 성능 최적화 등)는 전부 블로그에 정리해두고 있습니다. 실제로 운영 중인 서비스에서 나온 문제라 이론보다는 직접 겪고 해결한 과정 위주입니다.

협업 제안이나 채용 문의는 GitHub 또는 LinkedIn으로 편하게 연락 주세요.