본문 바로가기

TroubleShooting

웹 앱 호스팅

처음으로 웹앱을 배포해보았다.

node와 js만 사용했으며,

작업 진행 순서는 다음과 같다.

 

1. 웹 앱 테스트 서버 준비(express + yarn + npm)

2. TTS 기능(Azure) 적용 

3. 영상과 TTS 음성 합성 후 녹화 기능 적용

4. 웹서버(Azure) 구축 및 배포

 

1~3번은 별 문제 없이 진행 되었으나, 4번 과정에 난항이 많았다.

 

a. Azure 배포

  상태: VS Code 확장프로그램 배포 과정 중 Zip 이후에 실패가 떴다. 이유를 찾을 수 없었다.

         프로젝트 내 모든 import, export 구조는 ES6 방식으로 사용하고 있었다. 

  해결1: 아예 프로젝트를 지우고 다시 배포했다.

  방법1: 배포 시도 중 로그가 길게 나오는 경우 확인. 덕분에 검색으로 임시파일 폴더의 용량 문제를 확인했다.

  해결2: 서버단 파일을 ES5 형식으로 바꿨다.

  방법2: 배포가 안 되는 문제는 관련이 없었다. 다만, 이후 404 에러들을 만나 ES6 문제를 확인했다.

 

b. VS Code 확장프로그램 배포 시 국적에 따라 배포가 막힘.

  상태: 퀵스타트 가이드를 따라하던 중이었다.

  해결: VS code 버전을 다운그레이드해서 해결.
  방법: 먼저 터미널만 사용해 배포해도 문제가 없었기에, VS code 문제로 생각해서 StackOverFlow 사이트에 질문을 올렸다. (https://stackoverflow.com/questions/71689331/how-fix-azure-web-app-deploy-error-with-vscode

c.  CORS 문제

  상태: 테스트 서버에서 잘 가져오던 JSON 파일을 Azure 배포 후 가져올 수 없었다. (policy 로그)

  해결: 데이터 파일을 메인 서버로 옮겼다.

  방법: CORS 개념부터 숙지하고 관련 튜토리얼들을 따라 진행했다. 참고1, 참고2

          하지만 재배포 시 지워질 파일이기에 일단 웹서버로 옮겼다.

 

d. 환경변수 접근(로컬)
  상태: 라우터로 환경변수(process.env) 접근이 막혔다.
  해결: dotenv 라이브러리 사용.

  방법: 구글검색.

 

e. 환경변수 접근(웹서버)
  상태: 로컬서버에서 접근했던 환경변수가 배포후에는 접근을 할 수 없었다. 에러 로그는 그냥 500 에러여서 헷갈렸다.
  해결: Azure portal 에서 변수 등록.

  방법: 앱서비스의 구성(config) 메뉴에서 애플리케이션 설정 등록. 참고자료

 

'TroubleShooting' 카테고리의 다른 글

Install Jupyter-Notebook on AWS EC2 server.  (0) 2022.10.12
Unreal AR with Android  (0) 2022.06.07
Merge video and audio (with MediaRecorder)  (0) 2022.03.21
가상서버 설정  (0) 2022.03.15
비밀번호 재설정  (0) 2022.01.13