Vuejs & java server 반영 process

정현진·2023년 1월 2일
0

1. Vue.js

1) dist 파일 생성
로컬에서 npm run build 하면 dist파일이 생성된다.

2) 파일 옮기기
dist파일 통째로 서버로 옮긴다.
이 때, 서버에 dist파일을 담을 디렉토리 생성
/var/www/내가 원하는 디렉토리명
이 경로 안에 dist파일을 옮겨줌
Ex) var/www/datatool

3) nginx 설치
Nginx란 ? ubuntu에서 vuejs 프로젝트 (dist) 를 구동시키게 해줄 웹 서버 소프트웨어
-> sudo apt update (패키지 목록 업데이트)
-> sudo apt upgrade (패키지를 최신으로 업그레이드)
-> sudo apt-get install nginx

4) nginx config 파일 설정하기
-> cd /etc/nginx/sites-available : 가상 서버 환경들에 대한 설정 파일들이 위치하는 부분
-> sudo vi default
-> default 파일 편집
https://wedul.site/579

(1) Listen -> 설정해주지 않으면 80이 기본 port번호가 된다.
(2) Root -> index.html을 찾는 경로
(3) Location / -> vue.js의 기본 경로
(4) Try_files -> 경로 이동을 했을 때 404 error 해결
예를 들어, /about경로로 들어갔을 때 새로고침을 한다던가 경로를 이동했을 때 404가 뜨는 현상
Host/about으로 요청을 보내면 nginx가 이 요청을 받아서 루트 디렉토리 아래에 /about을 찾기 때문.
그런데 vue나 react는 싱글페이지라서 파일이 있지 않기 때문에 404 error가 난다.
(안적혀있으면 default로 try_files $uri $uri/ =404) ?.
https://www.python2.net/questions-1300255.htm
https://krksap.tistory.com/1931

(5) Error_page 405 -> 405 not allowed 해결
Nginx는 기본적으로 정적파일로 post 요청 처리를 허용하지 않는다.
Nginx 설정을 수정하여 post처리를 우회할 수 있다.
=200에서 =뒤에 공백이 없는 이유는 공백을 넣어주게 되면 문법 오류가 난다.
https://12bme.tistory.com/569

(6) location ~ /(api)/(.*)$ -> api라는 단어가 경로에 포함되어 있으면 proxy로 변환해주어 요청함.
https://yongho1037.tistory.com/807

(7) proxy_buffer 어쩌구 -> 502 bad gateway error 해결
https://doogle.link/nginx-proxy-502-bad-gateway-%EC%98%A4%EB%A5%98-%ED%95%B4%EA%B2%B0%ED%95%98%EA%B8%B0-bad-upstream-sent-too-big-header-while-reading-response-header-from-upstream/

5) nginx 실행 (처음 실행)
-> sudo nginx -t : 문법 체크
-> sudo systemctl restart nginx : 재실행

6) nginx reload (파일 수정 시)
-> sudo nginx -t : 문법 체크
-> sudo systemctl reload nginx : 새로고침 ..?
https://www.python2.net/questions-1121291.htm

전체적 : https://jay-ji.tistory.com/57

2. java

  1. jdk 설치
    -> sudo apt install openjdk-11-jdk
    (처음에는 8버전을 설치했다가 404error가 남. 프로젝트 jdk버전과 서버 jdk버전이 안맞아서 생겼던 error 였음)

  2. tomcat9 설치
    -> sudo apt-get install tomcat9

  3. tomcat9 실행 후 한번 접속해서 확인 (주소 : 8080)
    -> sudo systemctl start tomcat9.service

  4. filezila에 war파일 이동
    -> /var/lib/tomcat9/webapps에 war파일 옮기기

기존에 올려져 있던 리눅스 서버 사용법에서 xml수정이나 다른 파일 수정은 안해도 됨

Etc) 현재 실행되고 있는 경로 확인하기
netstat -ntlp | grep :80

0개의 댓글