fix: 입력 검증·보안 헤더·접근성·UX 개선
All checks were successful
Client CI/CD / deploy (push) Successful in 25s
All checks were successful
Client CI/CD / deploy (push) Successful in 25s
- 로그인/회원가입 입력 길이 제한 (username 50자, password 100자) - 공지사항 관리 입력 길이 제한 (제목 200자, 내용 10000자) - AnnouncementBoard aria-expanded 접근성 속성 추가 - DownloadSection useEffect 중복 API 호출 제거 - nginx 보안 헤더 (X-Content-Type-Options, X-Frame-Options) - nginx /assets/ 장기 캐싱 (immutable, 1년) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -3,12 +3,21 @@ server {
|
||||
root /usr/share/nginx/html;
|
||||
index index.html;
|
||||
|
||||
# 보안 헤더
|
||||
add_header X-Content-Type-Options "nosniff" always;
|
||||
add_header X-Frame-Options "DENY" always;
|
||||
|
||||
# index.html은 캐싱 금지 (배포 후 즉시 반영)
|
||||
location = /index.html {
|
||||
try_files $uri =404;
|
||||
add_header Cache-Control "no-store, no-cache, must-revalidate";
|
||||
}
|
||||
|
||||
# Vite 해시 에셋 장기 캐싱
|
||||
location /assets/ {
|
||||
add_header Cache-Control "public, max-age=31536000, immutable";
|
||||
}
|
||||
|
||||
# SPA fallback (react-router 사용 시 필요)
|
||||
location / {
|
||||
try_files $uri $uri/ /index.html;
|
||||
|
||||
Reference in New Issue
Block a user