웹 개발
검색해서 찾은 해결책이 자기 상황에 안 맞을 때
온라인에서 찾은 해결책을 그대로 따라 하다 보면 오히려 문제가 커질 수 있다. 비판적으로 검증하는 방법을 정리했다.
문제의 원인을 먼저 파악하기
검색해서 바로 명령어를 복붙하는 건 위험하다. 내 상황이 정확히 같은지 먼저 확인해야 한다.
예를 들어 "권한 부족" 에러가 나면 검색 결과는 chmod 777을 권장할 수도 있다. 하지만 이는 보안 문제를 일으킬 수 있다.
나는 다음 순서로 접근한다:
- 에러 메시지를 정확히 이해한다
- 왜 그 에러가 나는지 생각해본다
- 그 다음에 해결책을 찾는다
첫 번째 단계: 로그 읽기
# 웹 렌더링(Next.js)에서 sitemap/RSS 문제가 있다면
curl -s https://example.com/sitemap.xml
curl -s https://example.com/feed.xml | head -20
# 빌드 로그 확인
npm run build 2>&1 | tail -50
HTML이 아닌 XML이 돌아오는가? 빌드 시 에러가 있었는가? 이것부터 확인한다.
내 상황에 맞게 조정하기
검색 결과가 다음을 포함하는지 확인한다:
- 내가 사용하는 기술(React, Next.js, Node 버전 등)
- 비슷한 상황의 에러 메시지
- 왜 그 방법이 작동하는지의 설명
설명 없이 "이렇게 하면 된다"는 답변만 있으면 깊이 생각해봐야 한다.
HTML head와 메타데이터 확인
웹 렌더링 쪽 문제라면:
# 실제 HTML 확인
curl -s https://example.com | grep -Ei 'title|description|canonical|og:'
# 메타데이터 확인
echo "Title: $(curl -s https://example.com | grep '<title' | sed 's/.*<title>\|<\/title>.*//')"
기대하는 값이 나오는가? 검색 결과의 해결책이 정말 내 문제를 해결하는가?
변경 전후 기록하기
실제로 명령을 실행하기 전에:
- 현재 상태를 기록한다
- 하나의 명령만 실행한다
- 결과를 확인한다
- 성공/실패 모두 기록한다
이렇게 하면 실수로 시스템을 망쳤을 때 되돌릴 수 있고, 다음에 비슷한 문제가 나올 때 정확한 해결책을 알 수 있다.