inflearn logo
강의

Course

Instructor

[Renewal] Creating a NodeBird SNS with React

Deploying the Front Server

Cors error 인데 원인을 모르겠습니다.

676

psw926409621733

1 asked

0

또한, db 지우고 다시 create 해도 계속 대문자로 생성이 되는데 다른 부분을 설정하고 create 해야하나요? 강의에는 해당내용이 없네요

점검해본 사항 입니다. 추가로 확인해봐야할 사항이 있을까요??

1. ip 주소 설정

2. build 는 잘 됩니다.

3. ec2 프론트 ip 주소로 접속하면 시작화면은 나오는데 강의처럼 api 요청을하면 cors 에러가 나고있습니다.

4. ubuntu 환경에서 모든 설정 확인 후 재시작

5.  cors 설정

app.use(
cors({
origin: ['http://13.125.207.66', 'http://localhost:3060'],
credentials: true, // 다른 도메인 간에 쿠키 전달할 수 있게
})
);
 

express nodejs redux react Next.js

Answer 7

0

psw926409621733

레포를 보시는게 빠를 수도 있을 것 같아서 깃헙 주소도 남겨볼게요..!

https://github.com/psw0962/react-bird

 

src/server 

0

psw926409621733

이렇게 나와서 새로고침 후 로그인을 해보니 로그인 시도 1번 하고 다시 새로고침 후 로그인 시도를 하면 로그인이 되네요 ;;

질문하면서도 어디쪽을 염두하고 질문을 드려야할지 막막하네요.. 

0

psw926409621733

정말 이상한 상황이네요... 위와 같은 cors에러가 뜨는데 monit 에서는 

0

psw926409621733

db 설정 쪽 입니다.

 

const Sequelize = require('sequelize');
const env = process.env.NODE_ENV || 'development';
const config = require('../config/config')[env];
const db = {};

const sequelize = new Sequelize(config.database, config.username, config.password, config);

db.Comment = require('./comment')(sequelize, Sequelize);
db.Hashtag = require('./hashtag')(sequelize, Sequelize);
db.Image = require('./image')(sequelize, Sequelize);
db.Post = require('./post')(sequelize, Sequelize);
db.User = require('./user')(sequelize, Sequelize);

Object.keys(db).forEach((modelName) => {
if (db[modelName].associate) {
db[modelName].associate(db);
}
});

db.sequelize = sequelize;
db.Sequelize = Sequelize;

module.exports = db;

0

zerocho

이 설정이 아닙니다. 대문자가 되는 테이블 설정을 보여주세요.

0

psw926409621733

이 부분을 말씀하시는 건가요..?

0

zerocho

테이블이 대문자가 되는 것이 맞는데 무슨 문제가 있나요?

0

psw926409621733

강의에서는 대문자로 나오면 안된다고 drop db 하고 다시하니까 소문자로 테이블들이 만들어지는 내용이 있더라구요

0

zerocho

https://github.com/ZeroCho/react-nodebird/blob/master/ch7/back/models/hashtag.js#L14

이 줄처럼 tableName이 소문자면 소문자로 나와야합니다.

0

psw926409621733

음.. 알겠습니다 재시작 해보고 처음부터 진행해보고 안되면 차근히 정리 후 다시 질문 드리겠습니다. 바쁘실텐데 빠르게 답변주셔서 감사합니다

0

zerocho

네 올려주신 소스 보니까 tableName이 없더라고요.

0

psw926409621733

cors 코드는 백엔드 app.js 에서 작성한 내용이구요

위에 보이는 http://13.125.207.66 이 프론트 아이피 입니다

0

zerocho

이건 CORS 문제 이전에 서버에 에러가 있어서 발생한 문제입니다. 백엔드 서버 에러메시지를 확인하셔야 합니다.

pm2 logs --err --lines 200

0

psw926409621733

0|app      | Warning: connect.session() MemoryStore is not

0|app      | designed for a production environment, as it will leak

0|app      | memory, and will not scale past a single process.

0|app      | ConnectionError [SequelizeConnectionError]: Unknown database 'react-bird'

0|app      |     at connect (/home/ubuntu/react-bird/src/server/node_modules/sequelize/dist/lib/dialects/mysql/connection-manager.js:1:2170)

0|app      |     at processTicksAndRejections (internal/process/task_queues.js:95:5)

0|app      |     at async c._connect (/home/ubuntu/react-bird/src/server/node_modules/sequelize/dist/lib/dialects/abstract/connection-manager.js:1:4828)

0|app      |     at async /home/ubuntu/react-bird/src/server/node_modules/sequelize/dist/lib/dialects/abstract/connection-manager.js:1:3852

0|app      |     at async c.getConnection (/home/ubuntu/react-bird/src/server/node_modules/sequelize/dist/lib/dialects/abstract/connection-manager.js:1:4492)

0|app      |     at async /home/ubuntu/react-bird/src/server/node_modules/sequelize/dist/lib/sequelize.js:1:6942

0|app      |     at async w.createTable (/home/ubuntu/react-bird/src/server/node_modules/sequelize/dist/lib/dialects/abstract/query-interface.js:1:2235)

0|app      |     at async Function.sync (/home/ubuntu/react-bird/src/server/node_modules/sequelize/dist/lib/model.js:1:21209)

0|app      |     at async r.sync (/home/ubuntu/react-bird/src/server/node_modules/sequelize/dist/lib/sequelize.js:1:8476) {

0|app      |   parent: Error: Unknown database 'react-bird'

0|app      |       at Packet.asError (/home/ubuntu/react-bird/src/server/node_modules/mysql2/lib/packets/packet.js:728:17)

0|app      |       at ClientHandshake.execute (/home/ubuntu/react-bird/src/server/node_modules/mysql2/lib/commands/command.js:29:26)

0|app      |       at Connection.handlePacket (/home/ubuntu/react-bird/src/server/node_modules/mysql2/lib/connection.js:456:32)

0|app      |       at PacketParser.onPacket (/home/ubuntu/react-bird/src/server/node_modules/mysql2/lib/connection.js:85:12)

0|app      |       at PacketParser.executeStart (/home/ubuntu/react-bird/src/server/node_modules/mysql2/lib/packet_parser.js:75:16)

0|app      |       at Socket.<anonymous> (/home/ubuntu/react-bird/src/server/node_modules/mysql2/lib/connection.js:92:25)

0|app      |       at Socket.emit (events.js:400:28)

0|app      |       at addChunk (internal/streams/readable.js:293:12)

0|app      |       at readableAddChunk (internal/streams/readable.js:267:9)

0|app      |       at Socket.Readable.push (internal/streams/readable.js:206:10) {

0|app      |     code: 'ER_BAD_DB_ERROR',

0|app      |     errno: 1049,

0|app      |     sqlState: '42000',

0|app      |     sqlMessage: "Unknown database 'react-bird'",

0|app      |     sql: undefined

0|app      |   },

0|app      |   original: Error: Unknown database 'react-bird'

0|app      |       at Packet.asError (/home/ubuntu/react-bird/src/server/node_modules/mysql2/lib/packets/packet.js:728:17)

0|app      |       at ClientHandshake.execute (/home/ubuntu/react-bird/src/server/node_modules/mysql2/lib/commands/command.js:29:26)

0|app      |       at Connection.handlePacket (/home/ubuntu/react-bird/src/server/node_modules/mysql2/lib/connection.js:456:32)

0|app      |       at PacketParser.onPacket (/home/ubuntu/react-bird/src/server/node_modules/mysql2/lib/connection.js:85:12)

0|app      |       at PacketParser.executeStart (/home/ubuntu/react-bird/src/server/node_modules/mysql2/lib/packet_parser.js:75:16)

0|app      |       at Socket.<anonymous> (/home/ubuntu/react-bird/src/server/node_modules/mysql2/lib/connection.js:92:25)

0|app      |       at Socket.emit (events.js:400:28)

0|app      |       at addChunk (internal/streams/readable.js:293:12)

0|app      |       at readableAddChunk (internal/streams/readable.js:267:9)

0|app      |       at Socket.Readable.push (internal/streams/readable.js:206:10) {

0|app      |     code: 'ER_BAD_DB_ERROR',

0|app      |     errno: 1049,

0|app      |     sqlState: '42000',

0|app      |     sqlMessage: "Unknown database 'react-bird'",

0|app      |     sql: undefined

0|app      |   }

0|app      | }

0

zerocho

react-bird 데이터베이스를 안 만드셨는데요?

 sequelize db:create를 안 하신 것 같습니다.

0

psw926409621733

이런 에러가 나와서 sudo su -> mysql -uroot  -p

해서 use react-bird -> show tables; 하면

 

이렇게 나오면 db 있는거 아닌가요???

0

zerocho

서버도 sudo su 상태에서 실행하셨나요?

0

psw926409621733

네 맞습니다

0

zerocho

서버를 다시 시작하시고 바로 pm2 monit 하셔서 저 에러가 뜨는 게 맞는지 확인해보세요. 옛날 로그를 보고 계신 것일 수도 있습니다.

0

psw926409621733

0

zerocho

에러메시지를 보여주시고, db 설정 코드도 보여주세요.

저 cors 코드는 백엔드 코드인가요? 백엔드 코드에 프론트 아이피가 들어있나요?

넥스트 버젼 질문

0

78

2

로그인시 401 Unauthorized 오류가 뜹니다

0

89

1

무한 스크롤 중 스크롤 튐 현상

0

175

1

특정 페이지 접근을 막고 싶을 때

0

103

2

createGlobalStyle의 위치와 영향범위

0

96

2

인라인 스타일 리렌더링 관련

0

91

2

vsc 에서 npm init 설치시 오류

0

146

2

nextjs 15버전 사용 가능할까요?

0

158

1

화면 새로고침 문의

0

121

1

RTK에서 draft, state 차이가 있나요?

0

153

2

Next 14 사용해도 될까요?

0

452

1

next, node 버전 / 폴더 구조 질문 드립니다.

0

349

1

url 오류 질문있습니다

0

211

1

ssh xxxxx로 우분투에 들어가려니까 port 22: Connection timed out

0

373

1

sudo certbot --nginx 에러

0

1275

2

Minified React error 콘솔에러 (hydrate)

0

470

1

카카오 공유했을 때 이전에 작성했던 글이 나오는 버그

0

247

1

프론트서버 배포 후 EADDRINUSE에러 발생

0

327

1

npm run build 에러

0

518

1

front 서버 npm run build 중에 발생한 에러들

0

382

1

서버 실행하고 브라우저로 들어갔을때 404에러

0

338

2

css 서버사이드 랜더링이 적용되지 않아서 문의 드립니다.

0

288

1

팔로워 3명씩 불러오고 데이터 합쳐주는걸로 바꾸고 서버요청을 무한으로하고있습니다.

0

239

2

해시태그 검색에서 throttle에 관해 질문있습니다.

0

201

1