Conversation
- GitHub Actions: Node 버전 지정, npm 캐싱, 환경변수 주입 - firebase.json: 정적 에셋 캐싱, 보안 헤더 추가 - 환경변수 템플릿 업데이트 Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
Summary of ChangesHello @AndyH0ng, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! 이 PR은 Firebase 배포 설정을 전반적으로 개선하여 애플리케이션의 성능, 보안 및 개발 워크플로우를 최적화하는 데 중점을 둡니다. GitHub Actions를 통해 CI/CD 파이프라인을 효율화하고, Firebase 호스팅 설정을 통해 정적 콘텐츠 캐싱 및 웹 보안을 강화하며, 환경변수 관리를 표준화하여 개발 편의성을 높였습니다. Highlights
Ignored Files
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here. You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension. Footnotes
|
|
Visit the preview URL for this PR (updated for commit 55f6606): https://ttorang--pr55-chore-firebase-hosti-nbmlpcho.web.app (expires Sun, 25 Jan 2026 10:02:00 GMT) 🔥 via Firebase Hosting GitHub Action 🌎 Sign: b554669f2531ae9a6954d553a841ad9a6c4ceb6d |
firebase.json
Outdated
| { | ||
| "key": "X-XSS-Protection", | ||
| "value": "1; mode=block" | ||
| }, |
There was a problem hiding this comment.
X-XSS-Protection 헤더는 현재 대부분의 최신 브라우저에서 지원이 중단되었으며, 구형 브라우저에서는 오히려 보안 취약점을 유발할 수 있습니다. 따라서 이 헤더를 제거하는 것이 좋습니다. 대신, 더 강력하고 표준적인 Content-Security-Policy (CSP) 헤더를 설정하여 XSS 공격을 방어하는 것을 권장합니다.
| { | ||
| "source": "**/*.@(js|css)", | ||
| "headers": [ | ||
| { | ||
| "key": "Cache-Control", | ||
| "value": "public, max-age=31536000, immutable" | ||
| } | ||
| ] | ||
| }, | ||
| { | ||
| "source": "**/*.@(jpg|jpeg|png|gif|webp|svg|ico|woff|woff2)", | ||
| "headers": [ | ||
| { | ||
| "key": "Cache-Control", | ||
| "value": "public, max-age=31536000, immutable" | ||
| } | ||
| ] | ||
| }, |
There was a problem hiding this comment.
자바스크립트/CSS 파일과 이미지/폰트 파일에 대한 캐싱 규칙이 동일한 Cache-Control 헤더를 사용하고 있습니다. 이 두 규칙을 하나로 병합하면 firebase.json 설정 파일을 더 간결하게 유지할 수 있습니다.
| { | |
| "source": "**/*.@(js|css)", | |
| "headers": [ | |
| { | |
| "key": "Cache-Control", | |
| "value": "public, max-age=31536000, immutable" | |
| } | |
| ] | |
| }, | |
| { | |
| "source": "**/*.@(jpg|jpeg|png|gif|webp|svg|ico|woff|woff2)", | |
| "headers": [ | |
| { | |
| "key": "Cache-Control", | |
| "value": "public, max-age=31536000, immutable" | |
| } | |
| ] | |
| }, | |
| { | |
| "source": "**/*.@(js|css|jpg|jpeg|png|gif|webp|svg|ico|woff|woff2)", | |
| "headers": [ | |
| { | |
| "key": "Cache-Control", | |
| "value": "public, max-age=31536000, immutable" | |
| } | |
| ] | |
| }, |
- X-XSS-Protection 제거 (deprecated) - Content-Security-Policy 추가 - 캐싱 규칙 병합 (JS/CSS + 이미지/폰트) Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
📌 관련 이슈
✨ 변경 내용
💡 참고 사항
스크린샷, 참고 링크, 추가 설명 등 (없으면 생략 가능)