연재의 마지막 회차입니다. 포맷을 고르고, 업로드 크기를 정하고, 생성되는 크기를 정리하고, 반응형과 지연 로딩을 맞추고, 벡터와 영상까지 다뤘습니다. 그런데 몇 년을 운영하면 그 모든 규칙을 지켜도 어디에도 쓰이지 않는 파일이 쌓입니다. 시안, 교체된 배너, 한 번 쓰고 만 자료들입니다.
어려운 것은 삭제가 아니라 증명입니다
“이 파일은 안 쓰인다” 를 확신하기가 생각보다 어렵습니다. 참조가 여러 곳에 흩어져 있기 때문입니다.
본문에 삽입된 이미지는 찾기 쉽습니다. 문제는 아래쪽입니다 — 특히 CSS 안의 주소와 페이지 빌더가 자기 데이터 구조 안에 저장한 참조는 일반적인 검색으로 잘 잡히지 않습니다. 여기에 하나 더, 뉴스레터나 다른 사이트에서 파일을 직접 링크해 둔 경우도 있습니다. 사이트 안에서는 안 쓰이지만 지우면 남의 화면이 깨집니다.
안전한 순서 — 지우지 말고 먼저 격리합니다
백업이 먼저입니다. 업로드 폴더와 데이터베이스를 함께 받아 두고, 가능하면 복구가 되는지 한 번 확인합니다. 복구해 본 적 없는 백업은 백업이 아닙니다.
다음은 후보 목록입니다. 도구를 쓰든 직접 조회하든, “참조가 발견되지 않은 파일” 목록을 만듭니다. 이 목록은 삭제 목록이 아니라 의심 목록입니다 — 위 표의 아래쪽 자리들 때문에 오탐이 반드시 섞입니다.
그래서 격리합니다. 바로 지우지 않고 별도 폴더로 옮긴 뒤 몇 주간 사이트를 관찰합니다. 이미지가 사라진 자리는 눈에 띄고, 서버 로그에는 그 파일을 찾는 404 요청이 남습니다. 이 관찰 기간이 이 절차 전체에서 가장 중요한 단계입니다. 아무 문제가 없으면 그때 삭제합니다.
다시 쌓이지 않게 하는 규칙
정리는 한 번으로 끝나지 않습니다. 다시 쌓이지 않게 하려면 습관 쪽을 손봐야 합니다. 시안은 미디어 라이브러리에 올리지 않고 팀 저장소에서 검토합니다. 이미지를 교체할 때는 새로 올리는 대신 같은 파일을 갱신하면 주소가 유지되고 옛 파일도 남지 않습니다. 그리고 파일 이름 규칙을 정해 두면 몇 년 뒤에도 무엇인지 알아볼 수 있습니다.
연재를 마치며
여덟 회차를 지나오며 확인한 것은 하나입니다 — 이미지를 가볍게 하는 일은 화질을 포기하는 일이 아닙니다. 포맷을 성질에 맞게 고르고, 필요한 크기만 만들고, 브라우저가 고를 재료를 정확히 주고, 첫 화면 한 장만 예외로 다루는 것 — 전부 품질을 지키면서 무게를 줄이는 결정들입니다. 워드프레스는 이미 반응형 이미지와 지연 로딩을 기본으로 제공합니다. 우리가 할 일은 그 기본값이 제대로 작동할 재료를 주는 것뿐입니다.
더 넓은 성능 주제는 성능 최적화 아카이브에, 정리 작업의 운영 절차는 개발 워크플로우 아카이브에 이어집니다. 이미지 파이프라인 · 캐시 · 서버 설정까지 한 번에 정비하려면 최적화 지원 사업이 있고, 우리가 어떤 순서로 작업하고 무엇을 전후로 측정하는지는 작업 과정에 그대로 공개돼 있습니다.