plzhans blog

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

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

블로그 보러가기 →
Popular

인기 블로그 글

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

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

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

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

더 읽기 →
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 오류 해결까지 안내한다.

더 읽기 →
텔레그램 대화 백업하는 방법 - 설치 없이 브라우저에서 zip으로 내보내기
2026-07-27 텔레그램 대화 백업하는 방법 - 설치 없이 브라우저에서 zip으로 내보내기

텔레그램 공식 내보내기와 달리 기간 지정·특정 방 선택·말풍선 보기·익명 처리가 가능한 브라우저 백업 도구를 소개합니다. 설치 없이 바로 쓰고 서버를 거치지 않아 로그인 정보가 외부로 나가지 않습니다.

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

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

더 읽기 →
WireGuard 설치와 클라이언트 접속 설정 방법
2026-07-10 WireGuard 설치와 클라이언트 접속 설정 방법

Linux 서버에 WireGuard VPN을 설치하고 키 생성 방화벽 개방 서비스 등록까지 구성하는 방법을 설명합니다. Mac 클라이언트 conf 설정과 GUI 연결 확인 절차를 포함해 안전한 원격 접속 환경을 구축할 수 있습니다.

더 읽기 →
Latest

최근 블로그 글

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 로 좁히는 방법.

더 읽기 →
Cloudflare Workers 정적 사이트 가이드 - 배포부터 SEO까지
2026-09-11 Cloudflare Workers 정적 사이트 가이드 - 배포부터 SEO까지

정적 사이트를 Cloudflare 에 올리고, 그 앞에 코드를 한 겹 얹어 SEO 를 개선하기까지. 네 편으로 나눠 정리한 시리즈의 안내판.

더 읽기 →
Cloudflare Workers 정적 사이트 호스팅 - 요청 흐름과 과금 기준
2026-09-11 Cloudflare Workers 정적 사이트 호스팅 - 요청 흐름과 과금 기준

Workers Static Assets 가 무엇이고 요청이 어떤 순서로 흐르는지. 언제 워커가 돌고 언제 과금되는지. 정적 사이트에 동적 처리를 얹기 전에 알아야 할 것.

더 읽기 →
Cloudflare Workers 캐시 설정 방법 - 엣지 캐시와 Tiered Cache
2026-09-11 Cloudflare Workers 캐시 설정 방법 - 엣지 캐시와 Tiered Cache

워커가 외부 API 를 부를 때 캐시를 거는 두 가지 방법과, 모르면 반드시 밟는 함정 셋. 데이터센터별 캐시·Tiered Cache·캐시 키.

더 읽기 →

블로그 전체 글 보기 →

Services

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

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

About

만든 사람

손원철

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

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

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

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