AWS

[스프링] AWS로 프로젝트 배포하기 - 6 (파일 외부저장)

간펴니 2021. 10. 26. 23:48
728x90

이번엔 배포 후 파일 외부저장 위치를 바꿔보았다.

 

프로필사진이나 , 게시글 첨부파일 업로드, 다운로드에 사용하는 파일 외부저장소의 위치를

 

배포하게 되면 로컬에서 AWS 서버로 위치를 바꿔줘야 한다.

 


 

1. filezilla 접속

 

 

 

 

 

2. $ sudo su 로 root 계정 접속

 

 

 

 

 

 

3. cd /var/lib/tomcat9/webapps 로 이동

 

 

 

 

 

4. 마우스 오른쪽 클릭으로 디렉토리 생성 - upload

 

- 이제 AWS 서버에 파일을 올릴 디렉토리를 만들어줬다.

 

 

 

 

5.Spring 코드 수정

 

- 첨부파일 폴더에 저장한 이미지를 <img src="">로 불러올때 , servelt-context의 설정파일값을 사용한다.

 

<resources mapping="/image/**" location="file:///var/lib/tomcat9/webapps/upload" />

 

location의 위치를 새로만든 폴더로 바꿔준다.

 

 

 

 

파일 업/다운로드시에 사용할 파일 저장위치도 지정해준다.

 

이렇게까지 하면 파일은 정상적으로 업/다운로드 되지만 이미지는 출력되지 않는다..

 

 

f12를 눌러 확인해보니 /image의 위치가 404에러가 나고 있었다.

 

여러 시도끝에

 

[스프링] AWS로 프로젝트 배포하기 - 4 ( FileZilla 설치 및 프로젝트 배포) :: 간편 웹프로그래밍 (tistory.com)

 

[스프링] AWS로 프로젝트 배포하기 - 4 ( FileZilla 설치 및 프로젝트 배포)

전 글에 이어, 이번엔 FileZilla를 설치해서 리눅스서버 파일 관리를 윈도우에서 하려고 한다. FileZilla는 FTP 프로토콜로 원격파일관리를 할 수 있도록 해주는 프로그램인데, 원래라면 리눅스로 접

kimfk567.tistory.com

 

 

 

전 글에 작성한것처럼 , 톰켓 path를 잡아주면 된다.

 

자세한 설명은 생략하고 , puTTy에서 

 

$ cd /var/lib/tomcat9/conf

$ vi server.xml

 

 

<Context docBase="서버의 upload 폴더 경로" path="URL상의 upload 폴더 경로(프로젝트 내)"/>

<Context docBase="/var/lib/tomcat9/webapps/upload" path="/image/" />

 

로 잡아줘서 해결했다

 

이렇게 파일 업로드 , 다운로드 , 프로필사진 수정 , 출력 모두 구현 완료

 

 

 

 

 

 

 

 

 

728x90