묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결홍정모의 따라하며 배우는 C++
마지막 friend member 함수에 대해 질문합니다.
마지막 friend에 대한 질문입니다. class B 안에 void doSomething(A &a)가 있고 그 다음 class A 에 friend void B::doSomething(A &a)가 있어서 이것을 따로 떼어낸 void B::doSomething(A &a)가 작동되는 것은 이해 하였습니다. 그래서 응용해 보았는데요. 위에 있던 class B와 아래에 있던 class A의 순서를 위의 class A, 아래의 class B로 바꾸고, 전방선언 되어있던 class A를 class B로 바꾸었는데도 잘 안됩니다. class A와 class B의 순서를 바꾸었을 때는 어떻게 하면 그 전과 같이 결과를 낼 수 있을까요?
-
해결됨쉽고 빠르게 익히는 Excel 파워 쿼리
예제파일 출처 문의
안녕하세요. 강의에서 사용하는 엑셀파일은 어디서 다운받을 수 있을까요?
-
미해결초보자도 만들 수 있는 스크롤 인터렉션. 1편 자바스크립트
톱니바퀴 배경화면을 다른 페이지에서도 사용
톱니바퀴 배경 애니메이션 효과를 다른 html 페이지에서도 적용시키고 싶은데 불러와지지 않습니다. 어떻게 하면 될까요?
-
미해결Vue.js 중급 강좌 - 웹앱 제작으로 배워보는 Vue.js, ES6, Vuex
안녕하세요. App.vue shadow
안녕하세요! 각 인스턴스마다 scope를 줘서 각 인스턴스끼리 영향을 주지않게 했는데요. - 제가 이해한 흐름입니다. 맞는 흐름일까요? App.vue같은 경우 모든 인스턴스를 갖고와서 이제 조합하는 단계입니다. 그 App.vue에서 shadow를 갖는 모든 인스턴스에 적용하기위해 App.vue style에 shadow를 설정했다. 즉, a,b,c 라는 인스턴스에 루트 노드에 shadow를 갖는 모든 인스턴스는 app.vue의 shadow에 영향을 받는다. 맞나요? 항상감사합니다.
-
미해결실전! 웹사이트제작! Step by Step! (와이스튜디오_반응형웹)
reset txt
reset에 관한 txt가 없어서 붙여넣을수가 없네용
-
해결됨[리뉴얼] React로 NodeBird SNS 만들기
https 발급 시 snap과 nginx를 통해서 letsencrypt를 설치하기 질문입니다
제로초님 블로그에서 snap과 nginx를 통해서 letsencrypt를 설치하기를 따라하던 중 백서버에서 먼저 도메인주소를 api.ymillonga.xyz 로 https를 발급받았습니다. 그리고 프론트서버에서도 ymillonga.xyz라는 도메인주소로 발급받으려 했더니 api.ymillonga.xyz가 이미 발급된 상태이더군요.. 처음부터 와일드카드로 발급받아야했던 것 같은데 혹시 이런 경우 다시 초기화할 수 있는 방법이 있나요? 아니면 nginx의 /etc/nginx/nginx.conf 설정파일에서 server_name을 블로그와 같이 ymillonga.xyz, api.ymillonga.xyz수정하면 자동으로 해결되는 문제인가요? 1. letsencrypt설치 후 직접 수정한 /etc/nginx/nginx.conf 설정파일 상태 http { ## # Basic Settings ## sendfile on; tcp_nopush on; tcp_nodelay on; keepalive_timeout 65; types_hash_max_size 2048; # server_tokens off; # server_names_hash_bucket_size 64; # server_name_in_redirect off; include /etc/nginx/mime.types; default_type application/octet-stream; ## # SSL Settings ## ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # Dropping SSLv3, ref: POODLE ssl_prefer_server_ciphers on; ## # Logging Settings ## access_log /var/log/nginx/access.log; error_log /var/log/nginx/error.log; ## # Gzip Settings ## gzip on; # gzip_vary on; # gzip_proxied any; # gzip_comp_level 6; # gzip_buffers 16 8k; # gzip_http_version 1.1; # gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript; ## # Virtual Host Configs ## include /etc/nginx/conf.d/*.conf; include /etc/nginx/sites-enabled/*; server { server_name ymillonga.xyz www.ymillonga.xyz; return 301 https://ymillonga.xyz$request_uri; } server { server_name api.nodebird.com; return 301 https://$host$request_uri; } server { listen 443 ssl; server_name ymillonga.xyz; ssl_certificate /etc/letsencrypt/live/api.ymillonga.xyz/fullchain.pem; # managed by Certbot ssl_certificate_key /etc/letsencrypt/live/api.ymillonga.xyz/privkey.pem; # managed by Certbot include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; location / { 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:3050; proxy_redirect off; } } server { listen 443 ssl; server_name api.ymillonga.xyz; ssl_certificate /etc/letsencrypt/live/api.ymillonga.xyz/fullchain.pem; # managed by Certbot ssl_certificate_key /etc/letsencrypt/live/api.ymillonga.xyz/privkey.pem; # managed by Certbot include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; location / { proxy_set_header Host $host; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Real-IP $remote_addr; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_pass http://127.0.0.1:3051; proxy_redirect off; } } } 2. 프론트 서버 sudo certbot --nginx 입력 시 옵션 창 ubuntu@ip-172-31-44-138:~/ymillonga-sns/front$ sudo certbot - Saving debug log to /var/log/letsencrypt/letsencrypt.log Plugins selected: Authenticator nginx, Installer nginx Which names would you like to activate HTTPS for? - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1: api.ymillonga.xyz - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Select the appropriate numbers separated by commas and/or spa input blank to select all options shown (Enter 'c' to cancel): 1 Cert not yet due for renewal You have an existing certificate that has exactly the same doficate name you requested and isn't close to expiry. (ref: /etc/letsencrypt/renewal/api.ymillonga.xyz.conf) What would you like to do? - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1: Attempt to reinstall this existing certificate 2: Renew & replace the cert (may be subject to CA rate limits - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Select the appropriate number [1-2] then [enter] (press 'c' t Renewing an existing certificate for api.ymillonga.xyz Deploying Certificate to VirtualHost /etc/nginx/sites-enabled Traffic on port 80 already redirecting to ssl in /etc/nginx/sefault - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Your existing certificate has been successfully renewed, and icate has been installed. #mail { # # See sample authentication script at: 9. To obtain a new or tweaked version of this certificate in the future, simply run certbot again with the "certonly" option. To non-interactively renew *all* of your certificates, run "certbot renew" - If you like Certbot, please consider supporting our work by: Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate Donating to EFF: https://eff.org/donate-le 3. 설정파일 수정 후 서버 재시작 상태 프론트서버 상태 ubuntu@ip-172-31-44-138:~/ymillonga-sns/front$ sudo lsof -i tcp:3050 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME node 9977 root 18u IPv6 153759 0t0 TCP *:gds-db (LISTEN) ubuntu@ip-172-31-44-138:~/ymillonga-sns/front$ sudo lsof -i tcp:80 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME nginx 10070 root 8u IPv4 154727 0t0 TCP *:http (LISTEN) nginx 10070 root 9u IPv6 154728 0t0 TCP *:http (LISTEN) nginx 10075 www-data 8u IPv4 154727 0t0 TCP *:http (LISTEN) nginx 10075 www-data 9u IPv6 154728 0t0 TCP *:http 백서버 상태 ubuntu@ip-172-31-44-138:~/ymillonga-sns/back$ sudo lsof -i tcp:80 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME nginx 10070 root 8u IPv4 154727 0t0 TCP *:http (LISTEN) nginx 10070 root 9u IPv6 154728 0t0 TCP *:http (LISTEN) nginx 10075 www-data 8u IPv4 154727 0t0 TCP *:http (LISTEN) nginx 10075 www-data 9u IPv6 154728 0t0 TCP *:http (LISTEN) ubuntu@ip-172-31-44-138:~/ymillonga-sns/back$ sudo lsof -i tcp:3051 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME node 9928 root 20u IPv6 153760 0t0 TCP *:3051 (LISTEN)
-
미해결RPA로 자동화 천재되기 (UiPath 응용편)
IF 구문 오류
안녕하세요. 아래 오류 문제 확인 부탁드리겠습니다.
-
미해결홍정모의 따라하며 배우는 C언어
함수의 매개변수 질문
int compute_pow(base, exp) { int result = 1; for (int i = 0; i < exp; i++) result *= base; return result; } 이 부분에서 매개변수 base, exp에 자료형 int를 모르고 안붙였는데도 결과가 똑같았습니다 이유가 무엇인가요?
-
미해결(2023년 개정판) 매월 1000만원 버는 유튜브중개업 운영비법, 국내최초 온라인강의
탑100리스트 부탁드릴게용
dldusdl@gmail.com 입니다!
-
미해결프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
*args 부분에서 for의 내부변수
def args_func(*args): for i, v in enumerate(args): print('Result : {}' .format(i), v) print('---------') 여기서 for 에 i , v 를 내부변수로 넣으셨는데 복습을하다가 궁금해서 여기서 내부변수 n 을 하나를 추가해서 작성했는데 에러가 생기네요 for i , v , n in enumerate(args): print('Result : {} .format(i), v, n) 질문1. for i , v , n 이렇게 변수를 넣을 수 있는 지 여부와 넣을 수 있다면 어떻게 사용하며 활용되는지 궁금합니다. 질문2. C 언어에서 for 구문은 int형태로 범위를 넣어야되는데 파이썬에서 for v in enumerate(*args) 일 경우 args 에 문자가 들어가도 그 문자의 개수를 세서 int형으로 변환되어 enumerate(*args)결과 값으로 들어가는건가요?? 즉 in 다음에 숫자를 넣지 않아도 자동으로 숫자로 변환되어 들어가는건가요? for 구문에 대한 좀 세부적인 설명도 부탁드려도될까요? 항상 감사드립니다. ㅎㅎ
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
오타인 듯 하여 올립니다.
"하이버네이트...: 엔티티의 필드명을 그대로 테이블명으로 사용" -> 엔티티의 필드명을 그대로 테이블의 컬럼명 ?? 으로 사용 이 부분이 좀 이상한 듯합니다.
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
소켓을 인자로 넘기는 방법이 궁금합니다.
[선생님 답변] (꼭 사용할 필요는 없지만) 필요한 추가 인자를 넘겨주고 싶을 때 사용하는 것으로 이해를 해주시면 됩니다. 예를 들어 Listener를 2개 두고 각기 다른 포트 번호를 할당해서 클라가 붙는 Listener, 서버끼리 통신을 위한 Listener를 둘 수도 있을텐데, 그렇게 하면 OnAcceptCompleted가 뜰 때 둘 중 어떤 애가 개입한건지를 알기 힘드니 sender에 필요한 추가 정보(ex. listenSocket) 등을 전달해줄 수도 있을겁니다. 우리가 사용하는 코드에선 어차피 추가로 전달할 정보가 없으니 그냥 다 null로 전달해주고 있습니다. <------------------------------------------------------------> 선생님 말씀하신 대로 제가 코드를 구조만 생각해봤습니다. 전체적으로 수정할 실력이 되지 않아서 이런 흐름인지만 알고 싶어서 다시 질문드립니다... 아래와 같은 형태를 큰 틀로 잡고 살을 붙이지 형식으로 생각하면 될까요? // Program.cs namespace ServerCore { List<Listener> _listnener = new List<Listener>(); _listener.Add(endPoint1, OnAcceptHandler); // port : 7777 _listener.Add(endPoint2, OnAcceptHandler); // port : 8888 } // Listener.cs namespace ServerCore { if(pending == false) OnAcceptCompleted(_listenSocket[0], args); else if(pending == false) OnAcceptCompleted(_listenSocket[1], args); }
-
미해결공공데이터로 파이썬 데이터 분석 시작하기
수강 중 질문사항
안녕하세요! 좋은 강의 너무 잘 듣고있습니다! 다름이 아니라 split함수를 사용해서 YYYY-MM-DD형식을 연월일로 나누는 것은 잘 이해했습니다! 제가 따로 실습을 하려 다른 데이터를 사용하고 있는데 YYYYMMDD처럼 중간에 상용구 없이 붙은 경우에는 연월일을 어떻게 분리할수있을까요? 답변부탁드리겠습니다!
-
미해결it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비
two pointer 알고리즘 52번 강의 기준으로 어느 강의에서 배웠었나요?
two pointer 알고리즘에 대해 배우고 싶습니다
-
미해결성공적인 SQL 인젝션 공격을 위한, SQL 기본 문법
강의 자료 문의
혹시 수업에서 사용하는 강의 자료는 어디서 다운받을 수 있나요??
-
미해결Vue.js 시작하기 - Age of Vue.js
터미널 옆의 박스 안은 무엇인가요?
선생님은 박스 안에 [2:bash]라고 표시되는데, 저는 [1:zsh]라고 표시됩니다. 궁금해서 박스를 클릭해 보니, [1:zsh] 과 [2:node] 밖에 없고, [bash]는 아예 보이지도 않습니다. 무엇이 잘못된 것인지요?
-
미해결Vue.js 시작하기 - Age of Vue.js
npm 위치 찾는 법
윈도우에서 맥으로 막 갈아 탄, 완전 맥 초보입니다. 맥에서 npm 위치 찾는 법을 알기 쉽게 설명해주시면 감사하겠습니다.
-
미해결Vue.js 완벽 가이드 - 실습과 리팩토링으로 배우는 실전 개념
git허가 부탁드립니다~!
git허가 부탁드립니다~!
-
미해결Node.js 교과서 - 기본부터 프로젝트 실습까지
프레임워크 선택에 관하여 질문이 있습니다.
Node.js는 I/O에 특화되어있고 json데이터를 제공하는 api 서버에 많이 사용합니다. 이미지/비디오, 빅데이터 처리 등 cpu를 많이 사용하는 작업에는 적합하지 않다고 책(Node.js교과서)에 나와있습니다. 그렇다면 이미지 프로세싱(컴퓨터 비전관련) 작업은 Node.js로 하지않고 이미지/비디오 데이터만 저장/응답해주는 역할만 한다고 했을 때 Node.js가 적합한 프레임워크인지가 궁금합니다. 즉, 많은 사용자에게 큰데이터(이미지/비디오)를 I/O를 해준다면 Node.js가 올바른 선택인지가 궁금합니다. 예를 들면 Node.js에서는 이미지/비디오를 별도의 Storage(AWS의 S3 같은것...)에 upload하고 Storage의 url만 DB에 저장해놓습니다. 그리고 downlaod시에는 DB를 뒤져서 올바른 Storage의 url을 받아서 해당 Storage에서 직접 download 방식을 만드려고 하는데 이경우 Node.js가 효율적인 선택인걸까요?
-
미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
이렇게 체크리스트 배열(ch)를 만드는 생각을 잘못하겠는데 연습만이 정답이겠죠?
코딩테스트가 항상 무섭습니다 ㅠ 항상 오래고민하다가 도저히 생각이안나서 답을보게되는데요. 막상 답을보면 "어떻게 이런생각을 하지..." 라면서 되뇌입니다. 결국엔 연습을 많이해야겠죠?