Bitnami는 가상 어플라이언스 및 웹 애플리케이션, 개발 스택용 소프트웨어 패키지 및 설치 라이브러리이다.https://bitnami.com/stack/mamp/installer위의 링크를 통해서 Bitnami installer 페이지로 이동한다. 밑으로
AWS란 Amazon에서 클라우드 환경을 구축하여 가상컴퓨터를 대여해주는 서비스이다. 서버를 구동하기 위해서는 여러 물리적 자원과 시간, 비용이 필요하게 되는데 AWS를 이용하면 이 모든 절차를 생략할 수 있다. 아마존에서 구축해놓은 가상컴퓨터의 일부를 빌려서 내 컴퓨
EC2 인스턴스에 접속하여 Nginx를 설치한다.우선적으로 sudo apt update를 진행해준다.nginx -v를 통해 nginx가 정상적으로 설치되었음을 확인한다.EC2 인스턴스 서버의 퍼블릭 IP주소로 접속하여 Nginx가 잘 구동되고 있는 것을 확인한다. 본인
EC2 인스턴스 서버에 접속하여 sudo mysql -u root -p 를 통하여 MySQL에 접속한다.유저를 생성한다.'testUser'@'%' : testUser id는 외부에서 접근 가능'testUser'@'localhost' : testUser id는 내부에서
EC2 인스턴스에 접속하여 우선적으로 sudo apt update를 진행한다.sudo apt install phpmyadmin 명령어를 통해 phpMyAdmin을 설치한다. 설치 도중 웹 서버를 선택하라는 박스가 나오는데 이때는 tab을 눌러 아무것도 선택하지 않고 O
Domain을 적용하면 IP주소 대신에 domain name으로 보다 편하게 접근할 수 있게 된다. 가비아에 접속하여 회원가입을 완료한다. My가비아 버튼을 눌러 다음과 같은 화면으로 이동한다. 도메인 밑에 서비스 찾아보기 버튼을 눌러준다.다음과 같은 화면이 나타나면
1\. Let's Encrypt를 사용하여 SSL 인증서를 얻기 위해서는 우선적으로 letsencrypt를 설치해야 한다. letsencrypt를 설치하면 Certbot이 안에 포함되어 있기 때문에 별도로 Certbot을 설치할 필요가 없다. 먼저 update를 한번
가비아 DNS관리 화면으로 이동하여 레코드 수정 버튼을 눌러준다.레코드 추가 버튼을 누르고 다음과 같이 호스트를 서브 도메인명으로 추가해준다. 그리고 저장해준다./var/www/html에 들어가서 서브 도메인에 해당하는 디렉토리를 생성해준다. (본인은 dev, prod
Node.js를 공부하기 전에 간단하게 Node.js에 대해 알아보았다. Node.js는 확장성 있는 네트워크 애플리케이션(특히 서버 사이드) 개발에 사용되는 소프트웨어 플랫폼이다.작성 언어로 자바스크립트를 활용하며 Non-blocking I/O와 단일 스레드 이벤트
Client에게 Network를 통해 정보나 서비스를 제공하는 컴퓨터 시스템으로 컴퓨터 프로그램 혹은 장치를 의미한다.Server ProgramBackend LanguageDataBase Management System(DBMS)Client <=> Server P
AWS RDS는 AWS에서 제공하는 관계형 데이터베이스 시스템으로 데이터베이스를 분리하여 관리할 수 있도록 한다.1\. AWS 관리 콘솔에 들어간다. 2\. RDS를 선택한다. 3\. 데이터베이스 생성을 눌러준다. 4\. 본인은 엔진으로 MySQL을 선택했다. 5\.
무겁고 복잡하고 불편한 기존의 ERD 프로그램을 가볍고 깔끔하게, 사용하기 좋게 만든 ERD 프로그램이다. ERD를 작성한 후에 SQL문으로도 자동으로 작성해준다. ERD에 대해서는 이전에 다룬 글이 있으니 생략하겠다. ERD(Entity Relationship Dia
Packet은 데이터 덩어리, 데이터 뭉치이다.데이터를 담아서 보내는 상자라고 생각할 수 있다.Packet에서 데이터의 메타데이터를 담는 부분이다.Packet에서 데이터의 유저데이터를 담는 부분이다.HTTP(Hypertext Transfer Protocol)는 인터넷상
RESTful API를 기본으로 API 명세서를 작성하였다. 초기의 과정은 모두 로컬에서 진행하였고, 완료가 되면 서버에 git pull을 통해 반영시켰다.우선 이전에 만들었던 ERD에서 부족한 부분이 많이 보였기 때문에 ERD부터 새로 만들어서 진행했다. 때문에 쿼리
그동안 작성한 API들 중에 로그인을 하지 않은 상태에서 사용할 수 있는 API들은 얼마나 있을까? 아마 거의 대부분의 API들이 회원을 위한 API들일 것이다. HTTP의 가장 큰 단점은 상태를 저장하지 않는다는 것이다 (stateless). 이를 보완하기 위한 로그
소셜 로그인에 대해서는 아래 링크 참고\[ Server ] Authentication (Session & Cookie / OAuth / JWT) & Transcationkakao developers에 접속하여 로그인 해준다. 내 애플리케이션에 가서 애플리케이션을 추가하
처음으로 API를 작성한 뒤에 받은 피드백들을 정리해보려고 한다.우선 다음은 초기에 작성한 API 명세서이다.REST API에 대해서 정리를 하고도 많은 실수를 했다.URI에는 동사가 들어가지 않는다.URI에는 대문자를 사용하지 않는다.URI는 복수형을 지향한다.전체
Paging은 OS에서 메모리 관리 기법으로 사용된다. 서버에서는 웹이나 앱에서 불러오려는 데이터가 많을 경우 이를 나눠서 불러오도록 하는 기법이다. 어떻게 보면 데이터를 나눈다는 점에서 같다고 생각할 수도 있겠다. 온라인 쇼핑을 예로 들어보자. 전체 상품이 100개라
API를 여러 개 작성해보고, 다른 사람들이 작성한 API도 살펴보고 느낀 것에 대해서 적어보려고 한다.API를 처음 작성할 때에는 무조건 돌아가기만 하면 된다고 생각하고 작성했던 것 같다. 그러나 그 이후에 API에 대해서 더 배우고 나서는 돌아가기만 하면 된다가 아
전에 다뤘던 AWS EC2 프리티어를 사용하다보면 메모리가 1GB이기 때문에 인스턴스가 중지되는 현상이 발생한다. 이 부분에 대해서 해결 방안을 찾아보았다.스왑 파티션은 RAM이 부족할 때 추가적으로 실행되는 프로그램을 RAM이 아닌 디스크 용량 일부를 가상 메모리로
사실 글 제목에 대해서 정말 많은 고민을 했다. 정말 어쩔수 없이 급하게 putty를 사용하게 되었다.어제 새벽에 클라이언트와 함께 작업하던 도중 맥북 화면이 나가버려서 더 이상 맥북으로 작업을 할 수 없게 되었다. 급하게 아버지 노트북으로 postman만 사용중이었는
AWS의 S3는 AWS Simple Storage Service의 약자로 안전하고 가변적인 Object 저장 공간을 제공한다. 공식 문서에서는 웹서비스 인터페이스를 사용하여 데이터를 저장, 검색할 수 있다고 설명되어 있다.S3는 파일 저장소이다. 로그파일, 이미지, 비
안정적인 서비스를 개발하기 위해 필요한 레이트리미팅을 적용해보았다. 레이트리미팅을 적용하지 않을 경우, 다음과 같은 문제가 발생할 수 있다.사용자가 api 요청을 너무 많이 보낼 경우 서버가 마비될 수 있음DOS공격을 막을 수 없음Node.js의 경우에는 express