본문 바로가기

전체 글128

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] WIL 7주차 - clone coding 두번째 협업으로 clone coding을 진행하였다. 클론코딩이란 실제 있는 서비스를 모방해서 기능들과 페이지를 직접 구현해보는 것을 클론코딩이라 한다. 우리는 트위터를 클론코딩하기로 했다. 프론트분들이 트위터에 대한 강의(노마드코더 니꼬쌤)가 있어 추천해주셨다. 백엔드에서 사실 기존 기능과 다르지 않기에 빠르게 구현했다. 더 많은 기능을 구현하고자 싶지만 프론트 단에서 부담감이 있기에 추가 기능을 진행하되, 프론트에 연결하지는 않고 또는 최대한 백엔드 성능 향상 위주의 기능들을 진행하기로 했다. 좋아요 기능, 소셜로그인 기능, 검색 기능을 추가 기능으로 잡았고 그 외 더 해보고 싶었던 에러 핸들러, 로깅 기능들을 진행했다. 먼저 좋아요 기능을 담당을 받았다. DB의 게시글 테이블에 LikeCount 컬.. 2022. 8. 29.
[항해 99] WIL 6주차 - 첫 협업(잘 못했던 점...) 이번 주차부터 프론트와 백이 함께 프로젝트를 진행했었다. 하필 또.... 또... 팀장이 되었다 ㅜㅜ 처음 협업에 팀장이니 만큼 잘해야겠단 생각이 앞섰던 나머지 많이 서둘른게 화가 된게 아닌가 싶다. 처음으로 완성을 못한 주가 되었다. 그래서 지금까지 진행했던 팀장 역할을 잘하신 분과 나의 차이점을 분석해 보았다. 1. 아이스브레이킹 / 아이디어 선정 타임을 길게 잡았다. - 난 급했던 나머지 아이디어도 아이스 브레이킹도 업무를 진행하면서 했다. 하지만 곰곰히 생각해보니깐 팀장역할을 잘 수행하셨던 분들은 아이디어나 아이스브레이킹 타임을 꽤 길게 잡았던 것 같다. 2. 업무분담을 효율있게 선정했다. - 이번 프로젝트도 잘하시는 분과 처음하시는 분이 존재했다. 주니어한테 많은 것을 바라지 않는 것처럼 처음하.. 2022. 8. 21.
[항해 99] WIL 5주차 주특기 심화주 5주차가 끝났다. 4주차에 진행했던 로그인/회원가입/포스트/좋아요/댓글 기능을 Layerd architecture pattern으로 나누고 Test Code를 작성하여 서비스의 안정성을 높이는 작업을 진행했다. 코드를 나눔으로서 가독성이 좋아지고 코드간 독립성이 향상된다. 연계성이 줄어들기에 어디서 오류가 났는지 파악하기 쉽고 추상화가 되었다. 또한 테스트 코드를 작성하여 만에 하나라도 나올 오류들을 찾고자 할 수 있다. 단위테스트는 함수의 기능을 점검할 수 있다. 대신 인풋과 그 안에 사용되는 외부 모듈들은 목함수를 써서 가짜처럼 만들어야한다. 통합테스트는 기능들이 연계될 때 발생하는 오류들을 체크한다. 이 때 서비스에서 사용하는 메인 DB가 아닌 Test DB를 두고 테스트해야한다. 2022. 8. 14.
[항해99] Node.js 심화 주차 키워드 Q1. Class는 대체로 추상화를 위해 사용됩니다. ES5 자바스크립트에서 Class는 어떻게 동작할까요? 프로토타입 기반 객체지향 언어는 사실 클래스가 필요 없는 객체 지향 프로그래밍 언어이다. 그렇기에 ES6가 나오기 전인 ES5에선 클래스를 사용하지 않고 기존 생성자함수를 사용하여 추상화를 진행했다. 생성자 함수란 객체 인스턴스를 생성할 수 있는 함수로 전역 코드 단에 있고 함수의 프로토타입을 가지고 있는 함수만이 객체 인스턴스를 생성할 수 있다. 즉 생성자함수는 함수.프로토타입이란 숨은 객체를 가지고 있는데 이 객체가 없는 함수는 생성자 함수가 될 수 없다. (나는 화살표 함수가 생성자 함수가 될 수 없는 것으로 알고 있다.) 생성자 함수는 일반 함수와 기술적으로 차이가 없는데, 두가지 관례로 .. 2022. 8. 11.