2026-04-16 crowny-solution 한선씨 전환
개요
B2B 솔루션 포털(solution.crowny.org :9735)을 Node.js 372줄에서 한선씨 230줄로 전환. 한선씨 비중 9/11 → 10/11.
변환 내용
- 원본:
/Users/ef/crowny-solution/server.js (372줄, 13 솔루션 하드코딩)
- 한선씨:
/Users/ef/crowny-solution/솔루션서버.한선 (230줄)
- TOAU:
/Users/ef/crowny-data/bin/solution.toau (364K)
구현 API
- GET /api/health — 헬스체크 (lang: 한선씨)
- GET /api/solutions — 13개 솔루션 전체 목록
- GET /api/solutions/SOL-xxx — 개별 솔루션 상세
- GET /api/categories — 9개 카테고리
- GET /api/dashboard — 대시보드 통계
- POST /api/demo-request — 데모 요청 접수
- POST /api/inquiries — 문의 접수
- OPTIONS — CORS preflight
- GET / — HTML 랜딩 페이지
해결한 이슈
- 예약어
메서드: 한선씨 파서 예약어 → 방식으로 rename
- Content-Length UTF-8 불일치:
글자수()는 코드포인트, 바이트 아님 → Connection: close 사용
- 경로 문자 수 오산:
/api/solutions/ = 15자 (16 아님)
- 기존 Node 프로세스: gateway health-monitor.sh가 재기동 → hanseon 타입으로 전환 필요
인프라 업데이트
crowny-stack.yaml: crowny-solution type: node → type: hanseon
health-monitor.sh: solution 엔트리 node → hanseon + TOAU 실행 명령
관련 파일
/Users/ef/crowny-solution/솔루션서버.한선
/Users/ef/crowny-data/bin/solution.toau
/Users/ef/crowny-infra/crowny-stack.yaml (286행)
/Users/ef/crowny-gateway/scripts/health-monitor.sh (48행)
학습DB 추가
Content_Length_UTF8_회피: 한글 서빙 시 Connection: close 패턴
- 학습DB 3889 → 3938 (+49)
잔여
- crowny-network(781줄) 다음 차례
- crowny-main/core는 CrownyTVM 래퍼 — 별도 검토