이번엔 배포 후 파일 외부저장 위치를 바꿔보았다.
프로필사진이나 , 게시글 첨부파일 업로드, 다운로드에 사용하는 파일 외부저장소의 위치를
배포하게 되면 로컬에서 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)
전 글에 작성한것처럼 , 톰켓 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/" />
로 잡아줘서 해결했다
이렇게 파일 업로드 , 다운로드 , 프로필사진 수정 , 출력 모두 구현 완료
'AWS' 카테고리의 다른 글
[스프링] AWS로 프로젝트 배포하기 - 5 (AWS RDS, DB 연결 ) (0) | 2021.10.26 |
---|---|
[스프링] AWS로 프로젝트 배포하기 - 4 ( FileZilla 설치 및 프로젝트 배포) (3) | 2021.10.26 |
[스프링] AWS로 프로젝트 배포하기 - 3 (Java, 톰캣설치) (1) | 2021.10.26 |
[스프링] AWS로 프로젝트 배포하기 - 2 (puTTy 설치) (0) | 2021.10.26 |
[스프링] AWS로 프로젝트 배포하기 - 1 (0) | 2021.10.26 |