-
카테고리
-
세부 분야
백엔드
-
해결 여부
미해결
multer를 사용해서 사진 혹은 동영상을 업로드 할 때 url을 통해서 사진은 접근이 가능하나 동영상은 404에러가 뜹니다.
22.07.05 15:33 작성 조회수 275
0
안녕하세요. 오랜만에 질문드립니다. 제가 사진이나 동영상등을 멀터를 통해서 업로드 한 후 사진과 동영상을 각각 uploads/image, uploads/video 디렉터리에 disk storage 방식으로 저장하게 하였습니다. 그리고 저장된 파일이름과 서버url을 결합시켜서 db에 저장하게 하였고 사진은 url을 통해서 접근이 가능한데 동영상은 url로 접근할 때 404에러가 뜨더라구요. 동영상이 저장된 디렉터리로 이동시 동영상 파일이 온전히 있고 동시에 재생도 가능했습니다. 인코딩등의 문제가 관련이 있을까요?
답변을 작성해보세요.
0
이승훈
질문자2022.07.05
일단 사진 폴더에 동영상을 넣고 접근해도 결과는 안되는걸로 같았습니다. static 설정은 사진과 동영상을 처리하기 위해 아래처럼했습니다.
app.useStaticAssets(join(__dirname, "../uploads/image"), {
prefix: "/media",
});
app.useStaticAssets(join(__dirname, "../uploads/video"), {
prefix: "/media",
});
조현영
지식공유자2022.07.05
dist 폴더 지우고 서버 껐다 켜도 동일하신가요? /media/이미지는 되는데 /media/비디오는 404인 거죠?
참고로 join은 저렇게 사용하면 join을 쓰는 의미가 없습니다(돌아가긴 합니다), join(__dirname, '..', 'uploads', 'image') 이렇게 써야 합니다.
이승훈
질문자2022.07.05
일단 dist 폴더를 지우고 서버를 다시켜도 404가 뜹니다.
{"success":false,"statusCode":404,"message":"Http Exception이 발생하였습니다.","timestamp":"Tue Jul 05 2022 19:28:15 GMT+0900 (Korean Standard Time)","reason":"Cannot GET /media/kakaotalk_20220618_154257065-1657011632337.mp4","error":"Not Found"}
만약 동영상을 디스크 스토리지 방식으로 업로드 했을 때 서버 디렉터리에 /uploads/video라는 디렉터리에 파일(mp4파일입니다.)이 저장되고 여기에 url을 입히게 됬을 때 형식은 아래와 같습니다.
http://localhost:5147/media/kakaotalk_20220618_154257065-1657011632337.mp4
사진은 아래와 같습니다.
http://localhost:5147/media/img1-1657016922175.jpg
제 깃헙주소를 올려드릴까요?
답변 1