해결된 질문
작성
·
1.1K
1
안녕하세요.
스스로 해결해보려고 다양하게 시도했지만 문제 해결이 어려워 문의드립니다.
back 쪽에서 nginx.conf 를 아래와 같이 수정했고,
proxy_set_header 이외 넣어보라는 것들 5개 정도 넣어봤지만 잘안됐습니다.
(restart) 후 systemctl status nginx 특별한 오류 없이 잘 작동됩니다.
1) 해결하기 위한 노력
app.set('trust proxy', 1); --> app.enable('trust proxy'); 로 수정 해봤습니다.
2) 해결하기 위한 노력
proxy, secure 모두 true 상태에서 계속해서 secure 체크가 안됩니다.
true를 process.env.NODE.ENV === 'production'으로 수정을 해봤습니다.
계속해서 secure 체크가 안됩니다.
추가적으로 수정해야 할 부분이 있는지 문의 드립니다.
if (process.env.NODE_ENV === 'production') {
app.set('trust proxy', 1);
app.use(morgan('combined'));
app.use(hpp());
app.use(helmet({ contentSecurityPolicy: false }));
app.use(cors({
origin: 'https://kakao.gg',
credentials: true,
}));
} else {
app.use(morgan('dev'));
app.use(cors({
origin: true,
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,
proxy: true,
cookie: {
httpOnly: true,
secure: true,
domain: process.env.NODE_ENV === 'production' && '.kakao.gg'
},
}));
답변 1
1
아래처럼 다 넣어보셨나요?
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header X-Real-IP $remote_addr;
proxy_pass http://127.0.0.1:3065; proxy_redirect off;
네 response cookie는 secure 체크가 뜨지만 application탭은 secure체크는 물론 줄 생성 자체가 안됩니다. 오타가 있다면 app.js, nginx가 원인이라고 생각해 계속 읽어보는 중 입니다.
위에 이미지에서 Name, Value 다음이 Domain인데 a로 시작하는 것 같은데 저게 뭐라고 되어있나요? 프론트랑 백엔드랑 공유하려면 api.kakao.gg가 아니라 .kakao.gg여야 합니다.
안녕하세요.
생각보다 혼자 해결하기가 힘들어서 다시 왔습니다..
우선 제가 생각했을 때 network Cookies Domain 수정을 위해서는
아래 cookie domain이 가장 중요하다고 생각했습니다.
다시 한 번 api가 아닌 . 을 확인했고 reload도 해봤지만 해결이 안됐습니다.
config/config.js backUrl도 수정해봤지만 답이 아니였습니다.
혹시나 하는 마음에 nginx server name을 수정해봤지만 이 또한 방법이 아니었습니다.
node_modules > express-session > index.js 부분을 따로 수정해야 할까요?
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,
proxy: process.env.NODE_ENV === 'production',
cookie: {
httpOnly: true,
secure: process.env.NODE_ENV === 'production',
domain: process.env.NODE_ENV === 'production' && '.kakao.gg'
},
}));
app.use(passport.initialize());
app.use(passport.session());
안녕하세요.
우선 문서 참고해서 도메인 주소만 넣고 확인해 본 결과 정상작동합니다.
왜 && 가 안먹는지 모르겠지만 공부하다 보면 답을 찾을 수 있을 것 같습니다.
항상 도움 많이 받고 있습니다. 감사합니다.
domain: '.kakao.gg'
process.env.NODE_ENV === 'production' &&
domain: process.env.NODE_ENV === 'production' && '.kakao.gg'
추가 후 리스타트 했지만 똑같이 로그인이 풀려버립니다.
개인 컴퓨터 설정에 문제가 있는걸까요?