본문 바로가기

back-front end10

Nginx를 이용한 https구현하기(aws ec2 - linux ubuntu-20.04 LTS) -2 이 포스트는 이전 포스트를 이어서 쓴 글입니다. https://lucian-blog.tistory.com/143 Nginx를 이용한 https구현하기(aws ec2 - linux ubuntu-20.04 LTS) -1 https는 http에 보안을 추가한 프로토콜이다. http + Secure = https라 한다. SSL/TLS로 4계층(Transfort)와 5계층(application) 사이에 보안 보안 소켓 계층으로 이 보안층의 SSL/TLS 프로토콜과 HTTP 프로토콜이.. lucian-blog.tistory.com 이제 NginX를 깔아본다. 먼저 root로 돌아온다. cd / 다시한번 Nginx 설치하기 전에 서버의 패키지 목록을 업데이트한다. sudo apt-get update nginx깔기 .. 2022. 9. 17.
Nginx를 이용한 https구현하기(aws ec2 - linux ubuntu-20.04 LTS) -1 https는 http에 보안을 추가한 프로토콜이다. http + Secure = https라 한다. SSL/TLS로 4계층(Transfort)와 5계층(application) 사이에 보안 보안 소켓 계층으로 이 보안층의 SSL/TLS 프로토콜과 HTTP 프로토콜이 합쳐진 것을 HTTPs라 생각된다. HTTPs를 서버에서 설정하기 위해선 먼저 인증된 기관(CA)에서 받은 우리가 안전하다. 우리는 아무 해가 없는 서버다라는 인증서를 가지고 와야한다. NginX는 동시 접속 처리에 특화된 웹서버이고 정적 호스팅에 특화되어 있는 경량 웹 서버라고 한다. 서버에 부하도 줄일 수 있고(로드 밸런싱), 줄일 수 있다 보니 리버스 프록시 서버로도 사용이 가능하다. 즉 대량의 트래픽을 하나의 싱글 서버로 감당해 내기가 .. 2022. 9. 16.
[항해99] Node.js 심화 주차 키워드 Q1. Class는 대체로 추상화를 위해 사용됩니다. ES5 자바스크립트에서 Class는 어떻게 동작할까요? 프로토타입 기반 객체지향 언어는 사실 클래스가 필요 없는 객체 지향 프로그래밍 언어이다. 그렇기에 ES6가 나오기 전인 ES5에선 클래스를 사용하지 않고 기존 생성자함수를 사용하여 추상화를 진행했다. 생성자 함수란 객체 인스턴스를 생성할 수 있는 함수로 전역 코드 단에 있고 함수의 프로토타입을 가지고 있는 함수만이 객체 인스턴스를 생성할 수 있다. 즉 생성자함수는 함수.프로토타입이란 숨은 객체를 가지고 있는데 이 객체가 없는 함수는 생성자 함수가 될 수 없다. (나는 화살표 함수가 생성자 함수가 될 수 없는 것으로 알고 있다.) 생성자 함수는 일반 함수와 기술적으로 차이가 없는데, 두가지 관례로 .. 2022. 8. 11.
[항해99] require() require()은 Node.js 안에 module.js 파일 안에 정의된 메서드이다. 외부 모듈을 가져오게 하는 기능을 가지고 있다! 매개변수로 외부모듈의 파일경로를 넣는다. require("./aa/asdf"); // 현재경로에서 aa파일안에 있는 asdf모듈을 불러오겠다. 모듈이라 하면 외부에 영향을 받지 않는 재사용 가능한 코드들의 묶음이다. 라이브러리를 부를 때도 쓰지만, 우리가 만들었던 파일들을 불러올 때도 쓰인다. 이는 객체지향프로그래밍에선 클래스가 이런 모듈을 담당했고 javascript처럼 함수지향 프로그래밍에선 함수 객체가 이를 담당하고 있다. require()은 동작 원리 var require = function(src){ var fileAsStr = readFile(src) //li.. 2022. 7. 30.
[항해99] Express.js의 미들웨어 Express : 자체적으로 최소한의 기능을 갖춘 라우팅 및 미들웨어 웹 Framework Express 내에 있는 미들웨어 함수는 요청(Request), 응답(Response), 다음의 미들웨어 접근에 대한 권한(next)을 갖는다. 미들웨어는 요청과 응답을 조작하여 기능을 추가하기도 하고, 나쁜 요청을 걸러내기도 한다. 출처: https://inpa.tistory.com/entry/EXPRESS-📚-미들웨어-💯-이해-정리 [👨‍💻 Dev Scroll:티스토리] 미들웨어 함수의 진행 과정 - 요청 및 응답에 대한 동작 - 요청-응답 주기 종료 - 다음 미들웨어 호출 Express 내의 미들웨어 유형 - 애플리케이션 레벨 미들웨어 (내가 원하는 경로를 연결할 수 있다.) - 라우터 레벨 미들웨어 (내가 .. 2022. 7. 30.
[항해99] ORM ORM이란? - Object Relatinal Mapping의 약자로 객체 관계형 매핑. 객체와 RDB 테이블를 연결해주는 도구이다. - 객체와 테이블은 둘의 호환가능성을 두고 만들어진 개념이 아니기에 ORM을 이용하여 SQL문을 자동 생성하여 연결을 돕는다. 결국 따로 SQL문을 생성할 필요가 없기에 객체를 통해 간접적으로 DB조작이 가능해진다. - MVC 패턴에서 모델(Model) 부분을 기술하는 도구이다. (MVC란? https://hanamon.kr/mvc%eb%9e%80-mvc-design-pattern/ ) ORM을 왜 쓰는데? - ORM을 이용하면 DB접근을 자신이 쓰는 프로그래밍 언어의 관점에서 만들 수 있다. - 객체 간의 관계를 바탕으로 sql문을 자동 생성하여 엔티티를 객체로 표현할 .. 2022. 7. 30.
[항해 99] Javascript의 특성 1. JavaScript 자료형과 Javascript만의 특성은 무엇일까? 자바스크립트는 느슨한 타입(loosely typed)의 동적(dynamic) 언어이다 : 특정 타입의 변수와 연결되지 않고, 모든 타입의 값들로 할당하고 재할당이 가능하다. 이처럼 변수에 타입은 있지만 저장되는 값에 따라 값이 바뀌는 언어를 동적 타입 언어라고 한다. let num = 1234 num='string' // 이렇게 num에 1234라는 숫자형 변수를 넣어줬지만, 다음 줄에 string타입의 문자형 변수로 바꿔줄 수 있다. Javascript 형변환 : 자바스크립트의 형변환은 암시적 변환와 명시적 변환로 바뀐다. 암시적 변환 : 자바스크립트 엔진이 필요에 따라 자동으로 데이터타입을 바꿔줌 +연산자가 진행될 땐, 숫자형.. 2022. 7. 18.
세션, JWT토큰 - 쿠키 (까먹을 때 보면 좋은 글) https://tansfil.tistory.com/58?category=255594 쉽게 알아보는 서버 인증 1편(세션/쿠키 , JWT) 앱 개발을 처음 배우게 됐을 때, 각종 화면을 디자인해보면서 프론트엔드 개발에 큰 흥미가 생겼습니다. 한때 프론트엔드 개발자를 꿈꾸기도 했었죠(현실은 ...) 그러나 서버와 통신을 처음 배 tansfil.tistory.com https://www.youtube.com/watch?v=tosLBcAX1vk 웹, 앱 서버의 통신에서 인증이 필요한데 - 왜 인증이 필요한지 - 어떤 방법으로 인증을 하는지 - 그것에 대한 장단점은 무엇인지 이것들을 너무 잘 정리해주셨다. 까먹었을 때 다시 보기 위한 용도로 저장~ 2022. 7. 15.
[Chapter 1] E-3조 S.A(Starting Assignment) 1. 프로젝트 명 / 소개 2. 플로우 차트 2. 와이어 프레임 3. 개발해야 하는 기능들 4. public github repo 주소 1. 프로젝트 명 / 소개 Tour Korea 나만 알고 있기 아까운 우리 동네 예쁜 여행지들을 자랑하고 서로 구경함으로써 내가 모르는 동네에 갔을 때도 쉽게 여행지를 찾을 수 있도록 공유하는 웹서비스 입니다. 2. 플로우 차트 3. 와이어 프레임 - 메인 페이지 - Login/Sign up/Post 4. 개발해야 하는 기능들 기능 Method URL request response 메인 페이지 GET / travel_list 로그인 POST /api/login {'id' : id, 'pw' : pw} 로그인 완료 회원 가입 POST /signup {'id' : id, '.. 2022. 7. 11.