운영 HTTP에서 관리자 세션이 유지되지 않던 문제를 쿠키 공통화로 수정하고, 통계 클라이언트 분리·조회 오류·기간별 차트를 보강했다. 방문자 해시는 32일 초과분만 정리하고 일별 집계는 누적 보관한다. Co-authored-by: Cursor <cursoragent@cursor.com>
25 lines
690 B
JavaScript
25 lines
690 B
JavaScript
import { getRequestHeader, getRequestURL } from 'h3'
|
|
|
|
/**
|
|
* HTTPS 요청 여부를 판별해 Secure 쿠키 사용 여부를 반환한다.
|
|
* 운영 환경이라도 HTTP로 접속하면 쿠키가 저장되지 않는 문제를 막는다.
|
|
* @param {import('h3').H3Event} event - 요청 이벤트
|
|
* @returns {boolean} Secure 쿠키 사용 여부
|
|
*/
|
|
export const shouldUseSecureSessionCookie = (event) => {
|
|
const forwarded = String(getRequestHeader(event, 'x-forwarded-proto') || '')
|
|
.split(',')[0]
|
|
.trim()
|
|
.toLowerCase()
|
|
|
|
if (forwarded) {
|
|
return forwarded === 'https'
|
|
}
|
|
|
|
try {
|
|
return getRequestURL(event).protocol === 'https:'
|
|
} catch {
|
|
return false
|
|
}
|
|
}
|