묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨PHP 7+ 프로그래밍: 객체지향
로컬환경에서 개발 후 운영환경으로 배포 시 발생하는 이슈에 대한 문의입니다.
질문에 앞서 해당 질문은 'CentOS 7.* 서버쪽으로 배포를 해보던 중에 질문드립니다.' 질문과 연관됩니다. 안녕하세요. 이번 강의를 통해 만들어본 프로젝트를 운영환경쪽으로 배포해 보고자 합니다.운영환경 서버 S/W 정보는 아래와 같습니다. [서버 S/W 정보] 1. OS: CentOS 7.9 2. Language: PHP 7.3.27 3. Database: MariaDB 10.4.17 4. Web Server: Apache 2.4 (기본적인 APM 구성을 따르고 있습니다.) 현재 아파치 웹 서버의 가상호스트(VirtualHost) 설정을 통해 부여된 도메인으로 접근이 가능하도록 설정해 놓은 상황입니다. 하지만 사이트 접근 시 500 Error 페이지로 전환됨에 따라 PHP error log를 확인해 본 결과 아래와 같은 에러 메시지가 출력되고 있는 상황이었습니다. PHP Parse error: syntax error, unexpected '=>' (T_DOUBLE_ARROW), expecting ')' in {DOCUMENT ROOT}/vendor/painkill2r/inflearn-lecture-lib/src/Application.php on line 27 소스코드를 확인해 보니 Arrow Function에서 문제가 발생하는 것 같아서 문법 지원 버전을 확인해보니 PHP 7.4부터 지원되는 문법으로 확인이 되어 운영환경은 PHP 7.3을 사용하고 있기 때문에 에러 페이지로 전환되는 것으로 원인 파악이 되었는데요. 이런 경우 PHP 버전 업데이트를 하지 않고서는 해결이 불가능한 문제인지 아니면 다른 문법으로 변경을 해서라도 접속이 되게 할 수 있는지 첨언 부탁드립니다.감사합니다.
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
실제 배포한 ip에서는 쿠키가 생성이되지않고 passport중에deserializeUser호출이 안됩니다.
안녕하세요 조현영 선생님 제가지금 해당 강의를 통해서 개인 프로젝트를 진행중인데 문제가 발생이 됬습니다. 클라이언트와 백엔드 다 우분트 환경에서 잘 작동해서 실제 배포한 ip주소로 들어가면 정상적으로 화면이 보여집니다. 클라이언트 서버: 다 작동이 잘 되고 회원가입 기능도 잘 작동해서 실제 해당http://13.125.96.64 쪽으로 요청을 하여 데이터베이스도 잘 생성이되고 됩니다. 근데 문제가 local로 성공적으로 로그인을하면 passport.js 쪽에서 serializeUser 한번 실행을하고 쿠키가 생겨야하는데 생기질 않습니다. 그리고 다시 메인 화면으로 돌아오면 LOAD_MY_INFO_REQUEST action으로 통해서 cookie 와 같이 서버로 전송을해서 deserializeUser도 실행이 되야하는데. deserializeUser도 실행이 안됩니다. 제 로컬에서는 모든게 다 잘 작동합니다. 로컬에서 프론트: 로그인 하면 잘 작동합니다. 로컬에서 백엔드 pm2 환경 보시면 쿠키도 잘 생성되고 passport.js 에서 deserializeUser 도 잘 작동되는게 보입니다. 하지만 배포한 ip에서는 쿠키도 생성이 되질않고 deserializeUser 도 작동하지 않습니다위 사진은 제가 로그인이 성공하고 다시 메인 페이지로 돌아온 화면입니다 성공적으로 로그인이 되도 쿠키는 여전히 생성되지 않았습니다. 위 사진은 제가 로그인이 성공하고 다시 메인 페이지로 돌아온 화면입니다 성공적으로 로그인이 되도 쿠키는 여전히 생성되지 않았습니다. 백엔드쪽 봐도serializeUser 으로 로그인이 성공하고 deserializeUser는 호출이 되질 않습니다. back/app.js 소스코드입니다. const express = require('express'); const PORT = 80; const app = express(); const cors = require('cors'); const effectRouter = require('./routers/effect'); const userRouter = require('./routers/user'); const effectsRouter = require('./routers/effects'); const db = require('./models'); const session = require('express-session'); const cookieParser = require('cookie-parser'); const dotenv = require('dotenv'); const passport = require('passport'); const passportConfig = require('./passport'); const morgan = require('morgan'); const hpp = require('hpp'); const helmet = require('helmet'); db.sequelize .sync() .then(() => { console.log('db 연결 성공'); }) .catch(console.error); passportConfig(); dotenv.config(); app.use(cookieParser(process.env.EFFECTSHOP_SECRET)); app.use( session({ saveUninitialized: false, resave: false, secret:process.env.EFFECTSHOP_SECRET, }) ) if(process.env.NODE_ENV === 'production'){ app.use(morgan('combined')); app.use(hpp()); //보안에 도움되는 라이브러리 app.use(helmet()); }else{ app.use(morgan('dev')); } app.use(passport.initialize()); // 패스포트 설정 미들웨어에 추가. app.use(passport.session()); app.use(express.json()); app.use(express.urlencoded({extended: true})); app.use(cors({ origin:["http://localhost:3000","http://54.180.81.148"], credentials:true, })); app.get('/',(req,res)=>{ res.send('hello express'); }) app.use('/effects' ,effectsRouter); app.use('/effect',effectRouter); app.use('/user', userRouter); app.listen(PORT, ()=>{ console.log(`server on! at http://localhost:${PORT}`); }); 더 자세한 코드를 보시길 원하신다면 여기에 제 소스코드를 올려 놓았습니다 ㅠㅠ 엄청난 고민끝에 여쭤봅니다 ㅜ 감사합니다. https://github.com/sungmin-choi/effectShopByHTML-CSS
-
미해결Nuxt.js 시작하기
SSR/SSG 배포 관련해서 문의드립니다.
안녕하세요. 10월말 부터 약 한 달동안 'vue.js 시작하기' 강의부터 지금 이 nuxt 강의까지 쉼없이 달려왔네요. 그동안 수강평을 남기지 않아 문의 겸 감사의 말씀 드립니다. PHP + CI 백엔드 개발자인데 프론트로 전향하고 싶어서 알아보다 삽질의 시간을 줄이기 위해 강사님의 전체 강의를 듣게 되었습니다. 덕분에 한 달만에 Vue/Nuxt를 어떻게 사용하면 될지 정리가 되었네요! 이제는 토이 프로젝트들을 진행하며 익숙해지면 될 것 같습니다. 다시 한 번 감사드립니다. 문의드릴 것은 다름이 아니라 배포 관련해서 입니다. 1. 실무에서는 (회사 환경에 따라 다 다르겠지만) SSR / SSG 방식 중 어떤 것을 더 선호하나요? 2. Nginx(또는 Apache) 웹 서버를 사용하는 경우 아래와 같은 방법으로 처리되는게 맞을까요? 2-1. SSR 방식은 아래처럼 Proxy 처리를 하면 될 것 같은데, SSG 방식은 웹 서버의 Document Root에 빌드된 Dist 내용만 넣으면 되는 걸까요? 좋은 강의 감사합니다. 다음에 새 강의가 나오면 그 때 또 뵙겠습니다 :)
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 쇼핑몰 사이트 만들기[전체 리뉴얼]
Heroku 배포 질문 입니다.
선생님이 youtube 에 2020 년에 올리신 "deploy MERN Stack App with Heroku" 를 보고 디플로이 하였습니다. local 5000 도 다 heroku 도메인으로 바꿨고요. 업로드가 됬어야 할 사진들은 보이지 않습니다. 그리고 로그인전에 보이지 말아야 할 카트, 히스토리 등이 보입니다. 각페이지로 넘어는 가지만 기능이 작동을 안합니다. 해결 방법을 알려주실수 있으신가요? 부탁드립니다.
-
미해결
spring boot 배포는 어떻게 해야할까요?
spring boot를 공부했는데 원격 서버에 배포하는 방법을 모르겠어요 ㅠㅠ 욕심같아서는 도커, 젠킨스, 깃으로 배포하고싶은데... 아니면 젠킨스와 깃만으로 원격서버에 배포하는 것만이라도 알고 싶네요 ㅠㅠ 환경은 window 환경에서 개발하고 ide는 intellij로 Github, jenkins를 이용해 배포해보고 싶습니다. 혹시 비슷한 강의나 자료, 아니면 유료 오프라인 교육이라도 좋으니 추천해주시면 감사하겠습니다. 구글에서 이것저것 찾아봤지만 대부분 맥에서 배포하거나 이해가 잘안되거나 무언가 오류가 발생해서 힘드네요 ㅠㅠ
-
미해결
스프링부트 배포
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요 김영한선생님 코스에 따라 열심히 공부하고있는 학생입니다. 수업내용은 너무 재밌고 유익한데 배포에 대해서는 아직까지 들은게 없더라고요 ㅠ 친구들한테도 보여주고 싶어서 배포 하고 제가 따라 만들어높은 프런트엔드하고 같이 쓰고 싶은데 그거에 대한 자료들이 있을까요?? 인터넷에 찾아 봤더니 로컬 호스트로 밖에 안하시더라거요. 서버 배포하는데 결제가 들어가도 괜찮습니다.
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 기본 강의
heroku 배포에 관하여
좋은 강의 감사합니다. 강의대로 모든 준비를 마치고 heroku에 배포한 결과 Client는 정상적으로 동작하는데 서버가 정상적으로 동작하지 않는 것 같습니다. 로그인 또는 회원가입을 시도할때 다음과 같은 에러가 발생합니다. 일단 package.json 파일은 다음과 같이 수정했는데 어느 부분을 수정해야 할지 모르겠습니다. 배포를 해야 다음 강의를 진행할텐데 여기서 멈춰있습니다. 바쁘시겠지만 도움 부탁드립니다. 감사합니다. 수정한 부분은 다음과 같습니다. "scripts": { "start": "concurrently \"npm run server\" \"npm run client\"", "server": "node server/index.js", "client": "cd client && npm start", "test": "echo \"Error: no test specified\" && exit 1", "heroku-postbuild": "cd client && npm install && npm run build" }, const port = process.env.PORT || 5000; app.listen(port, () => console.log(`Example app listening on port ${port}!`));
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 기본 강의
aws에 s3 버킷으로 client 빌드된것을 배포할때 proxy가 안먹히거나 405에러가 뜨는 이유가 무엇일까요?
현재 강의를 듣고 만든프로젝트를 서버는 EC2에 클라이언트는 S3로 배포를 하였고 프록시서버를 EC2로 배포한 url로 타겟을 설정해주었는데요. 로컬에서 클라이언트를 실행해서 ec2서버로 요청은 가능하지만 s3로 배포한 뒤 클라우드로 정적호스팅된 사이트에서 ec2로 요청은 405에러가 나오는데 proxy가 안먹히는걸까요?
-
해결됨실전! 스프링 데이터 JPA
실습 프로젝트 배포판(jar) 빌드 및 실행시 트러블
안녕하세요. 영한님. Spring Data JPA 강의를 모두 마쳤고, Query DSL 강의 들은 후 다른 강의들과 함께 다시 들어 볼 계획입니다. 질문은 : 정상적으로 실행되는 Spring Boot 프로젝트를 배포용 jar로 만들어, 커맨드 창에서 실행하면 에러가 발생하는 상황인데 이럴 때 어느 부분을 체크해야 합니까? 자료 1 : 해당 프로젝트 다운로드 (zip) : https://we.tl/t-qsuxCwz4rf이 zip 파일은 영한님의 Spring Data JPA 강의를 끝까지 따라 한 프로젝트입니다. 물론 강의에서의 코드와 완전히 똑같지는 않습니다. 예를 들면 DB는 MySQL을 사용합니다. 제가 배포용 artifact를 설정하고 jar 빌드 후 커맨드 창에서 실행하는 동영상 : https://youtu.be/hAlztOYw9uA 감사합니다.
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
배포 때 mysql 사용 방법
안녕하세요. 정말 잘 배우고 있습니다. 강의 듣는 중에 궁금한게 2가지가 있는데요. 첫번쨰로, 강의에서 배포하실 떄 노드랑 mysql을 하나의 서버에 뒀지만, 2개로 나누는게 맞다고 말씀하셧습니다. 두개로 나눈다고 할 때, Amazon RDS로 사용하는게 나은지 아니면 ec2로 mysql만 따로 설치하는게 나은지 궁금합니다. 두번째로, 예를들어, 배포후에 서비스를 하는 중이었는데, 추가기능을 업데이트하려고 합니다. 테이블이 추가되고 컬럼이 추고 되는 등 데이터베이스의 구조가 바뀌었을 경우에, 실무에서 보통 어떻게 처리하나요? 기존 디비에 들어있는 내용을 유지는 하면서 새로운 컬럼이 추가되는 경우도 생길수 있을거 같습니다. 또 FK때문에 테이블을 다시 지우도 다시 만들어야하는 상황도 생길수 있을거 같은데, 이런 경우는 어떻게 다루나요? 감사합니다.
-
미해결작정하고 장고! Django로 Pinterest 따라만들기 : 바닥부터 배포까지
static file 들이 잘 불러와지지 않는것 같습니다...
58 강 막바지인데 따라서 전부 설정을 하고나서도 base.css 나 글꼴이 일부 적용이 안되고있습니다... staticfile들이 불러와지지 않는것 같습니당ㅠㅠ 밑에 사진을 첨부했는데 header에서는 적용이 안되는데 또 밑에 hello world List에서는 적용이 됩니다. 어디부터 확인해봐야되는건지 잘 모르겠어서 이렇게 질문을 드립니다.... 질문도 좀 제대로 드리고싶은데.... 이건 어디서부터 다시 봐야하는지 전혀 감을 못잡겠습니다. 질문 봐주셔서 감사드립니다!
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
강의 잘 듣고 있습니다. 프론트 서버 배포에서 막혀서 질문드립니다~
좋은 강의 잘 듣고 있습니다. 정말 감사합니다~ 제로초님께서 강의에서 설명해주신 sudo npx pm2 start npm -- start 명령어로 쳐보았을 때, 잘 안되어서 그냥 sudo npm run start 로 쳐보니, localhost:80으로 연결되는 것을 보았습니다. 이 부분이 문제인 것 같은데 어떻게 고쳐야 할지, 오랜시간 찾아보아도 잘 모르겠습니다. sudo npx pm2 log --err --lines 100 sudo lsof -i tcp:80 등을 쳐서 얻은 다른 에러 메세지들입니다. 도움주시면 감사하겠습니다. ^^
-
미해결파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
프로그램 완성 후..보안문제
선생님 안녕하세요.. 강의는 정말 잘 듣고 이를 업무에도 활용하고자 제가 셀레니움을 활용해서 프로그램을 만들었습니다. Pyinstaller 로 실행파일을 만들어 작동도 잘되고 합니다만, 사내에서 사용하려면 보안성검토를 거쳐야한다고 합니다. 제가 만든 프로그램은 셀레니움과 tkinter만을 이용하여 만든 프로그램인데 어떤 보안 취약점이 있으며..보완할 방법은 없는지 여쭈어봅니다 ㅠㅠ
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
배포를 해보려고하는데요!
forest-admin으로 배포를 해보려고 하는데요. 로컬환경에서 실행된 forest-admin 화면 상단의 [deploy-to-production] 버튼을 누른 뒤 backend URL을 입력 후 .env 파일에 key, Value 추가 후 서버 재시작을 해도 배포가 되지 않습니다. 1. 커맨드에 쳤던 걸 백엔드 서버에서 다시 진행하라고 하셨는데, 기존에 로컬환경에서 forest-admin을 적용하면서 생성된 prepare/admin/react-nodebird 하위의 데이터는 모두 git commit 하지않고 백엔드 서버에서 새로 만들어야 하는건가요? forest-admin에서 new project로 새로 생성해서 작업해야하는지.. 조금 어렵게 느껴지는데ㅜ 간략하게나마 순서 알려주시면 정말 감사하겠습니다!
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 쇼핑몰 사이트 만들기[전체 리뉴얼]
안녕하세요 강사님 헤로쿠 배포에 관해서 질문드려요ㅠㅠ
안녕하세요 강사님 취업준비를 하며 boiler-plate -> 유튜브 -> 쇼핑몰 까지 모두 완강하고 개인프로젝트를 한개 만들어 유튜브의 강사님 헤로쿠배포강의를 듣고 따라 배포했는데 배포도 완료되었고 로그를 보면 오류로그도 없이 잘 배포된거같은데 앱 도메인을 열어보면 hello world만 뜨네요 제가 초보라 아무리 뒤져보고 오류를 잡아내려해도 답이안나와서 지금 답없이 시간만 가고있는데 ㅠㅠㅠ 질문 드려도될까요... 혹시나 싶어 깃헙주소도 올려놓을게요.. https://github.com/bis92/LifeScheduler 읽어주셔서 감사합니다
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 쇼핑몰 사이트 만들기[전체 리뉴얼]
Heroku 배포하기 제발 도와주세요 ㅠㅡㅠ
"히로쿠에 배포하기" 선생님이 찍어두신 영상 보고 따라해서 잘 되었습니다. 다른 분 답글 달아주신 것도 보고 그대로 했습니다 ㅠㅜㅠ 그러나 {제 히로쿠 앱 주소}/~~ 이런식으로 localhost:5000을 모두 바꿔주었는데 처음에는 업로드도 잘 되고 화면에도 출력이 잘 되는데 시간이 30분? 1시간 정도 지나면 올렸던 사진들이 안보입니다 ㅠ 처음에는 몇개를 업로드 하든 잘 되는데 시간이 지나면 공통적으로 사진이 안보이는 현상이 일어납니다. 개발자 도구에서 경로를 보면 {제 히로쿠앱주소}/image이런식으로 잘 설정 되어있고 처음에도 잘 되는데 나중가면 사진이 안보이는 현상 왜그럴까요? 처음에는 잘 되는거 보면 주소에 오류가 있는건 아닌것 같습니다 ㅠ 처음에는 다른 질문처럼 제가 빈 uploads폴더를 push해서 그런가 했는데 push도 안하고 로컬에서도 아무것도 안건드린 상태여도 반복적으로 일어나는 현상입니다 ㅠㅠㅠ 그리고 시간이 지나는 것과 별개로 push하면 사진이 바로 사라지는데 이것은 uploads폴더는 그대로 두고 수정하여 재배포 하는 방법이 있을까요? uploads폴더가 비어있어서 그런가 바로 삭제되는 느낌도 있습니다. gitignore에서는 이미 push 한 것이라 그런지 계속해서 추적하네요 ㅠㅠ 처음부터 배포를 안하면 오류가 발생하구요 ㅠ... 1. 새롭게 push하면 사진이 없어짐. 2. 시간이 지나면 사진이 없어짐 두가지 현상이 있습니다. ㅇ개발자 도구에서 본 사진의 주소입니다. 처음에는 이렇게 잘 업로드 됩니다. 아무 것도 안했는데시간이 지나면 이런식으로 빈 화면만 뜹니다. 이것은 vscode에서 설정한 제 이미지 경로 소스 입니다. heroku에서 uploads 폴더를 확인 할 수 있는 방법이 있나요? heroku의 uploads 폴더의 사진이 자동적으로 삭제가 되는 걸까요? + 아마도 uploads폴더 안에 제대로 저장이 안되는 것이거나 uploads폴더가 주기적으로 삭제되는 것 같습니다 ㅠㅠ push는 heroku를 해당 프로젝트에 로그인 한다음 git push heroku master를 이용해 했었습니다. uploads 폴더도 .gitkeep을 이용하여 업로드 되어있고 처음에 안올렸었다가 오류가 나서 다시 포함하여 올린 것입니다.