작성
·
527
0
안녕하세요 제로초님 항상 질문에 빨리 답변 달아주셔서 감사합니다.
백엔드에 문제가 있는거 같은 pm2 monit은 아래와 같이 뜹니다
const express = require("express");
const session = require("express-session");
const cookieParser = require("cookie-parser");
const cors = require("cors");
const app = express();
const postRouter = require("./routes/post");
const userRouter = require("./routes/user");
const postsRouter = require("./routes/posts");
const hashtagRouter = require("./routes/hashtag");
const db = require("./models");
const passportConfig = require("./passport");
const passport = require("passport");
const dotenv = require("dotenv");
const morgan = require("morgan");
const path = require("path");
const hpp = require("hpp");
const helmet = require("helmet");
dotenv.config();
db.sequelize
.sync()
.then(() => {
console.log("db 연결성공");
})
.catch(console.error);
passportConfig();
//모드변경
if (process.env.NODE_ENV === "production") {
app.use(morgan("combined"));
app.use(hpp());
app.use(helmet({ contentSecurityPolicy: false }));
app.use(
cors({
origin: "http://sansbook.co.kr",
credentials: true,
})
);
} else {
app.use(morgan("dev"));
app.use(
cors({
origin: true,
credentials: true,
})
);
}
// app.use(
// cors({
// origin: [
// "http://localhost:3000",
// "http://sansbook.co.kr",
// "http://43.200.92.114",
// ],
// credentials: true,
// })
// );
app.use("/", express.static(path.join(__dirname, "uploads")));
app.use(express.json());
app.use(express.urlencoded({ extended: true }));
app.use(cookieParser(process.env.COOKIE_SECRET));
app.use(
session({
saveUninitialized: false,
resave: false,
secret: process.env.COOKIE_SECRET,
cookie: {
httpOnly: true,
secure: false,
domain: process.env.NODE_ENV === "production" && ".sansbook.co.kr",
},
})
);
app.use(passport.initialize());
app.use(passport.session());
app.get("/", (req, res) => {
res.send("hello express");
});
app.use("/posts", postsRouter);
app.use("/post", postRouter);
app.use("/user", userRouter);
app.use("/hashtag", hashtagRouter);
app.listen(80, () => {
console.log("서버실행중!");
});
답변 2
0
0
백엔드에서 npm i 하셨나요?
했는데도 저 에러가 뜬다면 aws-sdk 버전 제 강좌랑 다른 것을 설치하셔서 그렇습니다. 제 강좌랑 다른 버전을 설치하신 것에 대해서는 스스로 해결하셔야 합니다.
보통 첫 설치는 느릴 수 있습니다. 패키지가 엄청 많고 다운로드할 것도 많아서요. 특히 js파일말고 아예 c++같은 다른 소스를 받는 경우에 느립니다. bcrypt같은 것들이 특히 느려요.
아 그리고 제가 우분투로 접속해서 파일같은거 전혀 안건드리는데도 git reset --hard가 전혀 먹히질 않아서 매번 제거 다시 클론하는데 git에 문제가 있는건가요? 우분투로 접속해서 vim이나 git 명령어는 절대 사용안합니다
아 그리고 제로초님 버전이랑 맟추고 난뒤로는 이런 에러가 뜹니다!
const express = require("express");
const session = require("express-session");
const cookieParser = require("cookie-parser");
const cors = require("cors");
const app = express();
const postRouter = require("./routes/post");
const userRouter = require("./routes/user");
const postsRouter = require("./routes/posts");
const hashtagRouter = require("./routes/hashtag");
const db = require("./models");
const passportConfig = require("./passport");
const passport = require("passport");
const dotenv = require("dotenv");
const morgan = require("morgan");
const path = require("path");
const hpp = require("hpp");
const helmet = require("helmet");
dotenv.config();
db.sequelize
.sync()
.then(() => {
console.log("db 연결성공");
})
.catch(console.error);
passportConfig();
//모드변경
if (process.env.NODE_ENV === "production") {
app.use(morgan("combined"));
app.use(hpp());
app.use(helmet({ contentSecurityPolicy: false }));
app.use(
cors({
origin: "http://sansbook.co.kr",
credentials: true,
})
);
} else {
app.use(morgan("dev"));
app.use(
cors({
origin: true,
credentials: true,
})
);
}
// app.use(
// cors({
// origin: [
// "http://localhost:3000",
// "http://sansbook.co.kr",
// "http://43.200.92.114",
// ],
// credentials: true,
// })
// );
app.use("/", express.static(path.join(__dirname, "uploads")));
app.use(express.json());
app.use(express.urlencoded({ extended: true }));
app.use(cookieParser(process.env.COOKIE_SECRET));
app.use(
session({
saveUninitialized: false,
resave: false,
secret: process.env.COOKIE_SECRET,
cookie: {
httpOnly: true,
secure: false,
domain: process.env.NODE_ENV === "production" && ".sansbook.co.kr",
},
})
);
app.use(passport.initialize());
app.use(passport.session());
app.get("/", (req, res) => {
res.send("hello express");
});
app.use("/posts", postsRouter);
app.use("/post", postRouter);
app.use("/user", userRouter);
app.use("/hashtag", hashtagRouter);
app.listen(80, () => {
console.log("서버실행중!");
});
제로초님 혹시 강의하고 버전 맟추어야 하는거 뭐뭐있나요?
이번에는 Error: /home/ubuntu/Sansbook-back/node_modules/bcrypt/lib/binding/napi-v3/bcrypt_lib.node: invalid ELF 이에러가 떠서 제가 잘하고 있는지 잘모르겠네요
npm i 하면 제가 뭘 잘못설치했나 아래 에러도 뜨네요 ㅠㅠ
저 에러는 윈도우나 맥용 bcrypt가 리눅스에 설치돼서 그렇습니다.
npm rm bcrypt 후에 npm i bcrypt 하여 리눅스용 bcrypt를 다시 설치하세요.
제로초님 궁금한게 있는데 우분투에서 패키지 설치하면 속도가 엄청 느리더라구요 이유가 있나요? 백엔드만 엄청 느립니다! sudo npm i하는데 5분 걸리는거같아요