AWS로 배포를 해보려고 합니다. 일단 AWS에서 EC2를 사용하겠습니다. AWS에 로그인한 후에 서비스-컴퓨팅-EC2로 접근합니다. 그다음 좌측 네비게이션에서 인스턴스를 클릭합니다. 여기서 인스턴스 시작을 누릅니다. 이전에 실습한 강의가 있어서 저는 하나가 이미 있습니다. 인스턴스 이름을 작성하고 OS이미지는 우분투를 사용하겠습니다. 키페어도 사용하고 싶은 대로 만듭니다. 인스턴스를 생성하면 각종 IP 주소가 나옵니다. 이 퍼블릭 IP로 접근할 수도 있지만 고정된 아이피 값이 아니기 때문에 고정된 아이피를 생성해주는 것이 편합니다. 다시 좌측에서 탄력적 IP를 선택합니다. 우측 상단 탄력적 IP 주소 할당을 눌러서 기본 세팅대로 할당을 받습니다. 만든 후에는 해당 아이피 주소를 눌러서 작업에 있는 탄력..
노드
컨트롤러 각 라우트의 경로와 메서드에 따라서 서버가 실행할 서비스가 다릅니다. 그래서 라우트에 따라서 분류해준 후에 다시 그 라우트에서 사용할 함수들을 정리해줍니다. 이때, 지정된 메서드와 경로에서 실행되는 역할을 해주는 것이 컨트롤러입니다. 유저 인증 라우터에서 컨트롤러 파일을 별로도 두어 연결해보겠습니다. 기존에는 각 메서드와 경로에 따라서 매번 함수를 적어주면서 코드의 가독성이 조금 떨어지는 문제가 있었습니다. 이때 콜백 함수를 따로 저장하기 위해서 루트 디렉터리 하위에 controllers 폴더를 생성하고 user.controller.js 파일을 만들어줍니다. 그 이후, 각 콜백함수를 컨트롤러 파일로 잘라내기 합니다. 잘라낸 후에 기존의 문제점을 보완하면서 함수를 정리했습니다. import Use..
connect-redis의 버전이 올라가면 아래의 코드를 사용할 수 없다. const expressSession = require("express-session"); const RedisStore = require("connect-redis")(expressSession); ... app.use( expressSession({ resave: false, saveUninitialized: false, secret: , store: new RedisStore({ url: , logErrors: true, }), }) ); 이제 RedisStore에 client가 반드시 주어져야 하기 때문이다. 그래서 RedisStore에 client를 전해주어야 한다. 그래서 코드를 아래와 같이 수정했다. const exp..