# 변경 내역 (가족 여행 코스 / travel-system) 버전 규칙: 주.부.수정 (예: 1.1.0) - 주: 화면·구조가 크게 바뀔 때 / 부: 기능 추가 / 수정: 버그·데이터 수정 ## 1.3.0 — 2026-10-13 - **HTTPS(Caddy 리버스 프록시) 대응** — https://travel.woogigi.duckdns.org - 실제 접속자 IP: 127.0.0.1 에서 온 요청에 X-Forwarded-For 가 있으면 첫 번째 값을 사용 (proxy.py) · 그 밖의 주소에서 온 X-Forwarded-* 헤더는 위조 방지를 위해 무시 (http://IP:포트 직접 접속 유지) · X-Forwarded-Proto 로 https 인식 → 지도 진단·주소 판단이 https 기준으로 동작 - 보안 수정: 관리 API(/api/admin/collect)의 '내부 접속만 허용' 판단에서 프록시 경유 요청은 외부로 취급 (이전엔 Caddy 뒤에서 모든 요청이 127.0.0.1 로 보여 외부에서 수집을 실행할 수 있었음) - IP별 시도 횟수 제한: 코스 조회 1분 30회, 새 지역 즉시 수집 하루 15회 (공공데이터 일일 한도 보호), 로그에 실제 IP 기록 - `.env` 에 APP_URL 추가 (기본 https://travel.woogigi.duckdns.org) — deploy.sh 는 없을 때만 추가하고 기존 값은 절대 변경하지 않음 - deploy.sh: .env 마지막 줄에 개행이 없을 때 새 항목이 붙어 버리는 문제 수정, APP_URL 이 https 가 아니면 경고 - 혼합 콘텐츠 방지: 공공데이터·카카오의 http:// 이미지·링크를 https:// 로 변환 - 옛 주소 → 새 주소 **설정 옮기기**: 옛 주소 접속 시 안내 배너 + “설정 그대로 새 주소로 이동” 버튼 (이용 안내에 방법 추가) - test.sh: APP_URL 기준 지도 진단, 프록시 경유 관리 API 403 확인, 새 주소 접속 확인 - 쿠키·로그인·PIN·텔레그램은 이 시스템에 없음(해당 없음), 프론트엔드는 이미 상대 경로(/api/...)만 사용 ## 1.2.0 — 2026-10-05 - 코스 **A~E 5개**, 조회할 때마다 **새로 조합** (가중치 무작위, 🔀 다시 추천 버튼) - **언제 가요?** 선택 추가 (오늘·내일·이번 토/일·날짜 직접) — 날짜 기준으로 계절·요일·날씨 반영 - 계절: 장소별 제철 달 가점(벚꽃·단풍·물놀이 등), 진행 중인 축제를 코스에 포함 - 날씨: Open-Meteo 예보(16일 이내, 키 불필요) — 비 → 실내 위주 + 야외 장소 우산 안내, 폭염·한파 대응 - 시간: 오늘 출발이면 지금 시각 + 이동시간부터, 야경은 그날 일몰 이후, 늦으면 내일 기준 - 요일: 정기 휴무(월요일 휴관 등) 장소 자동 제외 (공공데이터 휴무 정보도 해석) - 5개 코스가 서로 겹치지 않게(출발점·장소 다양화), 계절·날씨에 잘 맞는 순서로 A→E 정렬 - 손으로 짠 대표 코스(courses.json)의 장소 조합은 가점으로 반영 - 장소 추가: 양산시립박물관, 울산박물관, 일산해수욕장, 경주 동궁원, 양동마을, 주상절리 파도소리길, 문무대왕릉 - 근처에 확인된 식당이 없으면 카카오 주변 음식점으로 채움(술집·카페 제외, '카카오 검색' 표시) - 장소마다 출처 표시(✔검증 / 공공데이터 / 카카오 검색) ## 1.1.1 — 2026-10-04 - deploy.sh: `.env.example` 이 없어도 내장 템플릿으로 복구 (파일 복사 중 숨김파일 누락 대비) - deploy.sh: 배포할 때 현재 .env 설정을 보여줌 (키는 앞 6자리만, 빈 항목은 ✗ 표시) ## 1.1.0 — 2026-10-04 - 지역을 버튼 선택 대신 **직접 입력** (아무 지역 가능). 양산·울산·경주는 ✔검증 코스, 그 외는 공공데이터 자동 코스 - 출발지 **기본값 = 현재 위치** (https 환경), http 에서는 지난 출발지 사용 + 직접 입력 - **공공데이터 연동**: 한국관광공사 TourAPI 4.0(관광지·문화시설·음식점·숙박·축제), 무장애 여행정보(유모차·엘리베이터 등) - **정기 데이터 수집기**: 매일 04:30·16:30 자동 실행(systemd timer) — 목록 갱신, 상세정보, 축제, 카카오 재확인(폐업·이전 의심 기록) - 근처 축제·행사(앞으로 60일) 표시 - 지도: 카카오 지도 실패 시 원인 자동 진단 + OpenStreetMap 으로 자동 대체 - 앱 아이콘(파비콘·홈 화면 추가용), manifest - 버전 관리: VERSION·CHANGELOG, 배포 때 이전 버전 자동 백업, `rollback.sh` 로 되돌리기 - deploy.sh 를 소스에 포함 (이후 업데이트: zip 을 ~/projects 에 복사 → `bash ~/projects/travel-system/deploy.sh`) - 선택: `https_setup.sh` (도메인 + 자동 인증서) — 휴대폰 현재 위치 사용 가능 ## 1.0.0 — 2026-10-04 - 첫 버전: 양산·울산·경주 큐레이션 코스(A·B·C), 일정(반나절~3박4일), 점심·저녁, 자동차·대중교통, 출발지 - 카카오 지도·경로·사진, 숙소 추천, 이용 안내