first project 9-2022.03.08(Tues)

kyoungyeonยท2022๋…„ 3์›” 12์ผ
0

FIRST PROJECT

๋ชฉ๋ก ๋ณด๊ธฐ
7/14
post-thumbnail

  • teammeber

    • 2 back -end
    • 2 front -end

  • leader = ๋‚˜ ์ž…๋‹ˆ๋‹ค (back-end)๐Ÿ˜‚ ๊ฐœ๋งํ•จ


  • ์ฃผ์ œ - ์Œ์•… ๊ณต์œ  ์ปค๋ฎค๋‹ˆํ‹ฐ -์Šคํฌํ‹ฐํŒŒ์ด (ํด๋ก ๊ฐ™์ง€๋งŒ ์•„๋‹Œ๋“ฏํ•œ)์œ ์‚ฌ ์ฝ”๋”ฉ.


  • ํ˜„์žฌ status

    • ์ฟ ํ‚ค์˜ ์ด์Šˆ ํด๋ผ์ด์–ธํŠธ์—์„œ ๋‚œ๋ฆฌ๋‚จ
    • ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์ฝ”๋“œ๋ฅผ ์ˆ˜์ •์‹œ ์„œ๋ฒ„์— ํฌ๋ž™์ด ๋‚œ๋‹ค๊ณ  ํ•จ?
    • dev log๋ฅผ ๋Œ€์ถฉ์ ์€๋“ฏ ํ•˜๋‹ค. ์•„๋งˆ ๋˜‘๊ฐ™์€ ์ด์Šˆ๋กœ ์ธํ•ด ๋‚˜๋งŒ ๋’ค์ณ์ ธ์„œ ๊ทธ๋Ÿฐ๋“ฏ
    • post controller ์™€ ๋ฐฐํฌ๋ฅผ ์‹œ์ž‘ํ–ˆ๋‹ค.

  • ์•„์‰ฌ์šด์ 

    • ๊ธฐ๋ก์„ ์ œ๋•Œ ์•ˆํ•˜๋ฉด ๊ธฐ์–ต์ด ๊ฐ€๋ฌผ๊ฐ€๋ฌผํ•˜๋‹ค.

    • module ์ด์Šˆ ๋ฐœ์ƒํ–ˆ์œผ๋‚˜ ์ œ๋Œ€๋กœ ์ฒ˜๋ฆฌ๋ฅผ ๋ชปํ•œ๋“ฏ ํ•จ

err1

 node:events:368
      throw er; // Unhandled 'error' event
     ^
Error: listen EACCES: permission denied 0.0.0.0:80
    at Server.setupListenHandle [as _listen2] (node:net:1317:21)
    at listenInCluster (node:net:1382:12)
    at Server.listen (node:net:1469:7)
    at Function.listen (/home/k2y/sec3/im-sprint-practice-deploy/server/node_modules/express/lib/application.js:618:24)
    at Object.<anonymous> (/home/k2y/sec3/im-sprint-practice-deploy/server/app.js:138:5)
    at Module._compile (node:internal/modules/cjs/loader:1101:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1153:10)
    at Module.load (node:internal/modules/cjs/loader:981:32)
    at Function.Module._load (node:internal/modules/cjs/loader:822:12)
    at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12)
Emitted 'error' event on Server instance at:
    at emitErrorNT (node:net:1361:8)
    at processTicksAndRejections (node:internal/process/task_queues:83:21) {
  code: 'EACCES',
  errno: -13,
  syscall: 'listen',
  address: '0.0.0.0',
  port: 80
}

solution

  • ์œ„ ๋ฌธ์ œ๋Š” ๊ณ„์† ์•„๋ž˜ ์ฝ”๋“œ๋กœ ์ž„์‹œ ๋ฐฉํŽธ์œผ๋กœ ์ฒ˜๋ฆฌํ•จ.
  • ์™œ Ubuntu ์—์„œ ๋ฐ˜๋ณตํ•ด์„œ ์ƒ๊ธฐ๋Š”์ง€์— ๋Œ€ํ•œ ํ•ด๊ฒฐ์ฑ… ํ•„์š”.
sudo lsof -i :8080
sudo kill -9 [PID] 

erro2

/home/ubuntu/.pm2/logs/server-error.log last 15 lines:
0|server   |     syscall: 'connect',
0|server   |     address: '127.0.0.1',
0|server   |     port: 3306,
0|server   |     fatal: true
0|server   |   },
0|server   |   original: Error: connect ECONNREFUSED 127.0.0.1:3306
0|server   |       at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1161:16) {
0|server   |     errno: -111,
0|server   |     code: 'ECONNREFUSED',
0|server   |     syscall: 'connect',
0|server   |     address: '127.0.0.1',
0|server   |     port: 3306,
0|server   |     fatal: true
0|server   |   }
0|server   | }

/home/ubuntu/.pm2/logs/app-out.log last 15 lines:
/home/ubuntu/.pm2/logs/app-error.log last 15 lines:
1|app      |     at listenInCluster (node:net:1382:12)
1|app      |     at Server.listen (node:net:1469:7)
1|app      |     at Function.listen (/home/ubuntu/im-sprint-practice-deploy/server/node_modules/express/lib/application.js:618:24)
1|app      |     at Object.<anonymous> (/home/ubuntu/im-sprint-practice-deploy/server/app.js:135:5)
1|app      |     at Module._compile (node:internal/modules/cjs/loader:1101:14)
1|app      |     at Object.Module._extensions..js (node:internal/modules/cjs/loader:1153:10)
1|app      |     at Module.load (node:internal/modules/cjs/loader:981:32)
1|app      |     at Function.Module._load (node:internal/modules/cjs/loader:822:12)
1|app      |     at Object.<anonymous> (/home/ubuntu/.nvm/versions/node/v16.13.0/lib/node_modules/pm2/lib/ProcessContainerFork.js:33:23) {
1|app      |   code: 'EACCES',
1|app      |   errno: -13,
1|app      |   syscall: 'listen',
1|app      |   address: '0.0.0.0',
1|app      |   port: 80
1|app      | }

solution

  • errno -111 ์ด๋ถ€๋ถ„์€ ํ˜„์žฌ ํŒŒ์•…์ค‘

err 3

npx sequelize-cli db:seed:undo ๋ฅผ ์ž…๋ ฅํ•ด๋„ ์ž…๋ ฅํ–ˆ๋˜ seed๊ฐ€ ๋ ˆ์ฝ”๋“œ์—์„œ ์‚ฌ๋ผ์ง€์ง€ ์•Š๊ณ  ๋‹ค์‹œ ์ค‘๋ณต ์ƒ์„ฑ๋˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋ฐœ์ƒํ•˜๊ณค ํ•จ

solution

  • ์ž„์‹œ ์ฒ˜๋ฆฌ
  • db ๋ฐ์ดํ„ฐ๋ฅผ ์ˆ˜์ •์‹œ ๋งค๋ฒˆ drop -> create- > migration์„ ์ง„ํ–‰ํ•ด์•ผ ํ•˜๋Š”๋ฐ ์ด๋ถ€๋ถ„์— ๋Œ€ํ•œ ํ•ด๊ฒฐ์ฑ… ํ•„์š”ํ•จ
  1. ๊ธฐ์กด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์‚ญ์ œํ•˜์‹œ๊ณ  ๋‹ค์‹œ ๋งŒ๋“ค์ž
    drop database
    create database
    npm run start
  1. env ํŒŒ์ผ ์ƒ์„ฑํ›„ ๋‹ค์Œ ์ฝ”๋“œ ์ž…๋ ฅ
    DATABASE_USERNAME=root
    DATABASE_PASSWORD=
    DATABASE_NAME='MusicFlower'
    ACCESS_SECRET=secret
  2. Seed ๋ฐ˜์˜ ์œ„ํ•ด์„œ ๋‹ค์Œ ๋ช…๋ น์–ด ์ž…๋ ฅ
    npx sequelize-cli db:seed:all

๋ญ”๊ฐ€ ์ œ๋Œ€๋กœ ์•ˆ๋  ๋•Œ
๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์‚ญ์ œํ•˜์‹œ๊ณ  ๋‹ค์‹œ ๋งŒ๋“œ์‹œ๋Š” ๊ฒŒ ๋‚˜์„์ง€๋„.

err4

login:1 Access to XMLHttpRequest at 'http://ec2-3-35-27-251.ap-northeast-2.compute.amazonaws.com/login' from origin 'http://musicflowerclient.s3-website.ap-northeast-2.amazonaws.com' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. 
  • frontend ์—์„œ ๋ฆฌํฌํŠธ -> aws์—์„œcors์—๋Ÿฌ ์žˆ์Šต๋‹ˆ๋‹ค

solution 4

app.use(
  cors({
    origin: [`${server}`, `${localhost}`],
    credentials: true,
    methods: ["GET", "POST", "PUT", "DELETE", "OPTIONS"],
  })
);
  • ์œ„ origin์—์„œ / ์ด๋ ‡๊ฒŒ ๋˜์–ด์žˆ๋˜ ๊ฒƒ์„ ${server}, ${localhost}๋กœ ์ˆ˜์ •ํ•œ๊ฒƒ์œผ๋กœ ๊ธฐ์–ตํ•จ.

  • ๊ฐœ์„  ์ 
  1. ๊ธฐ๋ก์€ ๋งค์ผ ํ•˜์ž <- ๊ณ„์† ๋ถˆ๊ฐ€๋Šฅ

  2. ๋ฐฑ์—”๋“œ๊ฐ€ ๋‚ด๊ฐ€ ์Šคํ”ผ๋“œ์—… ํ•˜์ž

  3. ์„œ๋ฒ„๋ž‘ ํด๋ผ์ด์–ธํŠธ ์†๋„๋ฅผ ๋น„๋“ฑ๋น„๋“ฑํ•˜๊ฒŒ ํ•ด์ค˜์•ผ ํ•œ๋‹ค.

  4. DB์— ๋Œ€ํ•œ ๊ณ ๋ฏผ์„ ๋‹ค๊ฐ™์ด ํ•ด๊ฒฐํ•ด์•ผ ํ•œ๋‹ค.

    โ— errono ์˜ค๋ฅ˜ ์ฒ˜๋ฆฌํ•˜๊ธฐ!


profile
๐Ÿ TECH & GOSSIP

0๊ฐœ์˜ ๋Œ“๊ธ€