devlog 002: 로케일 처리 구현 과정에서의 문제점 및 해결 방향
카테고리
프로그래밍/소프트웨어 개발
서브카테고리
웹 개발
대상자
프론트엔드 개발자, 웹 애플리케이션 구축자 (중급~고급)
핵심 요약
- TypeScript 기반 구현 시 로케일 경로
/en/compressor
와 기존 경로/compressor
간 충돌로 인한 404 오류 발생 - 초기 라우팅 로직을
/compressor
로 고정한 결과, 로케일 지원 시 주소 변경으로 인한 호환성 문제 발생 - 현재는
/en/compressor
로 강제 리다이렉트 설정하여 임시 해결, 하지만 완전한 배포는 미완료 상태
섹션별 세부 요약
1. 초기 라우팅 설계 및 문제점
- 도메인 URL 기반으로
/compressor
경로로 강제 리다이렉트 설정 - 로케일 처리 도입 후
/en/compressor
경로로 변경되면서 기존/compressor
경로는 404 오류 발생 - TypeScript 타입 시스템의 엄격한 체크로 인한 라우팅 로직 오류 발견 지연
2. 로케일 자동 처리 시도 및 대안
- 브라우저 언어 설정 자동 감지 기능 구현 시 복잡한 다국어 지원 로직 필요
- 간편한 해결책으로
/en/compressor
로 강제 리다이렉트 설정 - 웹사이트 내 언어 드롭다운을 통해 수동 언어 전환 기능 추가
3. 현재 상태 및 향후 계획
- 현재 도메인 URL은 이전 버전의
/compressor
페이지로 연결됨 - 로케일 처리 및 라우팅 로직 수정 작업은 다음 개발 주기로 미룸
- TypeScript 기반 구현의 한계와 라우팅 설계 초기 단계의 오류 분석 필요
결론
- 로케일 지원은 초기 아키텍처 설계 단계에서 명확히 정의해야 하며, TypeScript의 엄격한 타입 체크는 오류 발견에 유리하지만, 기존 로직과의 호환성 검증이 필수
- 임시 해결책으로 리다이렉트 사용 시, 향후 확장성을 고려한 라우팅 구조 재설계가 필요