본문 바로가기

tech epilogue10

3분 넘게 걸리던 배포, 1분 30초대로 깎아낸 Bitbucket Pipeline 최적화하기 최근 제가 담당하는 프로젝트의 배포 시간이 점점 늘어나기 시작했습니다.특히 npm install 단계에서만 2분을 넘게 잡아먹는 것을 보고, "이건 좀 아니지 않나?" 하는 생각에 뜯어고쳐 보기로 했습니다. "node_modules"를 그냥 다 캐시하면 안 돼?"가장 먼저 든 생각은 단순했습니다. "npm이 패키지를 새로 받느라 느린 거니까, node_modules 폴더를 통째로 저장해 두자!" ~/.npm 대신 node_modules를 캐싱하도록 설정을 바꿨습니다.definitions: caches: node: node_modules 실패. 빌드 시간은 거의 줄어들지 않았고, 여전히 2분을 넘겼습니다. 캐시에서 node_modules를 불러왔다는 로그(Restored cache)가 떴ㄴ든데도,.. 2026. 4. 22.
우리도 구글 검색 1페이지에 나오고 싶다(2) SEO 개선을 위해 메타데이터를 넣고 schema.org를 넣었지만 아직 타겟 키워드 검색 시 웹사이트가 페이지가 5페이지 이내에 노출되지 않고 있다. 이를 위해서 schema.org 구조화 데이터로 seo를 개선하기로 했다. 구조화 데이터는 검색엔진이 웹페이지의 내용을 더 정확하게 이해할 수 있도록 돕는 코드이다. HTML에 보이지 않는 메타데이터를 추가해 검색엔진에게 "이 페이지는 무엇에 괂나 것이고, 어떤 정보를 담고 있는지"를 명확하게 알려준다.구조화 데이터의 주요 강점은 Rich Snippets, Knowledge Graph, 음성 검색 최적화, 검색 순위 개선이다. Rich Snippets는 검색결과에 별점, 가격, 이미지 등 풍부한 정보를 표시하며, Knowledge Graph는 브랜드/회사.. 2025. 10. 17.
Next.js 미들웨어 리디렉션과 Google 색인 문제 해결 웹페이지의 루트(/)로 접근하면 특정 페이지로 리디렉션하는 구조로 서비스를 운영하고 있었다. Google Search Console에 루트 URL을 등록하고 색인 생성을 요청했지만, 계속해서 색인이 생성되지 않는 문제가 발생했다.Google Search Console의 URL 검사 도구에서는 다음과 같은 오류 메시지를 확인할 수 있었다. 나는 루트고 접근하면 다른 페이지로 이동시키는 코드를 middleware에 작성해두었는데, Next.js(v14 이상, App Router)의 미들웨어에서 NextResponse.redirect()를 사용하면 기본적으로 307 상태 코드를 반환한다. 그럼 여기서 redirect를 뜻하는 301과 307 status code가 어떻게 다른지 확인해 봐야겠다. 301 Mov.. 2025. 10. 13.
우리도 구글 검색 1페이지에 나오고 싶다(1) 새로운 제품을 출시하고 나서 여러 경로를 통해 마케팅을 하게 된다.프론트엔드 개발자가 할 수 있는 마케팅은 무엇이 있을까? SEO를 통해 사용자들에게 노출되는 방법이 있을 것 같다.프로젝트 개요: 왜 Technical SEO가 중요했나지금 프로젝트는 랜딩 페이지다. 검색 유입이 비즈니스 성과와 직결되는 구조였기 때문에, 초기 설계 단계부터 SEO를 최우선 과제로 설정했다.유기적 검색 트래픽 확보핵심 키워드 상위 노출소셜 공유 시 풍부한 미리보기 제공모바일과 데스크톱 모두 최적화된 사용자 경험 1. 상세한 메타데이터: Open Graph부터 Twitter Card까지Next.js의 Metadata API를 활용하여 다층적인 메타데이터 전략을 구축했다. 실제 적용 내용:코드에서 shareData 객체를 통해.. 2025. 9. 29.