배경
웹 인트로의 매뉴얼 영역에 플랫폼 사용 방법 영상을 넣기로 함.
유튜브 업로드 후 <iframe>을 넣는 방법도 있었지만, 영상을 외부에 올리지 않기 위해 웹 서버에 직접 두고 <video> 태그로 재생하는 쪽을 택함.
변경 내용
먼저 시도한 방법 (실패)
영상을 /smahshare/common에 올리고 Spring Boot에서 핸들링하도록 WebConfig.java에 리소스 핸들러를 추가함.
registry.addResourceHandler("/video/**")
.addResourceLocations("file:/smahshare/common/");동영상이 불러와지지 않았음. 매뉴얼 파일 다운로드도 같이 안 됐음. 아파치 쪽 설정이 따로 필요한 구조였음.
최종 방법
영상을 프론트 public 폴더에 넣어 정적 자원으로 같이 배포함.
- 위치:
public/documents/manual/web_manual.mp4 - 파일:
frontend/src/views/intro/components/TheManual.vue
<b-row class="justify-content-center mt-5">
<div>
<h1>플랫폼 사용 방법</h1>
<video controls style="width: 800px; height: 522px;">
<source src="/documents/manual/web_manual.mp4" type="video/mp4" />
</video>
</div>
</b-row>정적 파일(영상, 매뉴얼 문서)은 서버 공유 폴더가 아니라 public 폴더에 넣어 배포함. 이 규칙은 다운로드 파일에도 똑같이 적용됨.
확인 방법
- 배포 후 인트로 화면에서 영상이 재생되는지 봄.
- 매뉴얼 다운로드 링크가 404가 아닌지 확인함.
- 안 나오면 브라우저 네트워크 탭에서
/documents/manual/경로의 응답 코드를 봄.