Server/Linux 13

sh) 쉘스크립트 실행으로 디렉토리 이동하기

테스트용 스크립트를 생성했다. # test.sh #!/bin/sh echo $PWD cd Desktop echo $PWD 서브 스크립트로 실행되어 sh가 종료되면 원래 디렉토리를 유지한다. ./test.sh # 실행 시 /Users/jun /Users/jun/Desktop # 종료 후 원래 디렉토리 그대로 아래는 sh 종료 후 디렉토리까지 이동된다. source test.sh # 실행 시 /Users/jun /Users/jun/Desktop # 종료 후 디렉토리 이동

Server/Linux 2023.03.07

EC2) ssh 원격접속, scp 파일전송

로컬 터미널에서 EC2원격 접속하기 ssh -i [PEM키 경로] [EC2NAME]@[HOST] ssh -i /Users/jun/abc.pem ubuntu@1.2.3.4 참고) https://docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/AccessingInstancesLinux.html SSH를 사용하여 Linux 인스턴스에 연결 - Amazon Elastic Compute Cloud 이 페이지에 작업이 필요하다는 점을 알려 주셔서 감사합니다. 실망시켜 드려 죄송합니다. 잠깐 시간을 내어 설명서를 향상시킬 수 있는 방법에 대해 말씀해 주십시오. docs.aws.amazon.com 로컬 터미널에서 EC2에 파일 전송하기 scp -i [PEM키 경로] [보낼 파일..

Server/Linux 2023.01.31

Linux) curl로 POST / GET method request 보내기

간단한 curl 사용법이다. # [G] curl http://localhost:3000/home curl -X GET http://localhost:3000/home -- Body를 가질 경우 # [P] curl -d '{"email": "abc@d.com"}' -X POST http://localhost:3000/email -H "Content-Type: application/json" 참고) https://www.lesstif.com/software-architect/curl-http-get-post-rest-api-14745703.html curl 설치 및 사용법 - HTTP GET/POST, REST API 연계등 서버의 정상 동작 여부를 점검할 경우 SSL 인증서 검증 제외(-k) 와 301, ..

Server/Linux 2023.01.03

POST에서만 Cors에러가 발생할 때

413 Request Entity Too Large (nginx) 위와 같은 오류가 뜨면서 메소드에 접근을 하지 못하는 상황이 발생한다. POST 메소드의 body size가 너무 커서 접근하지 못하는 것. buffer를 사용할 때 자주 발생한다. node 기반 서버사이드에서 바디사이즈를 확장시키고 nginx 서버의 바디사이즈 또한 같이 확장시켜야 한다. 1. Server Side // main.ts import { urlencoded, json } from 'body-parser'; app.use(json({ limit: '50mb' })); app.use(urlencoded({ limit: '50mb', extended: true })); body-parser 라이브러리를 설치하고 위처럼 셋팅한다. ..

Server/Linux 2022.06.29

VueJS-AWS-EC2-NGINX-Certbot 서버 열어주기

0. EC2 Setting sudo apt-get update sudo apt-get install nginx sudo apt-get install certbot 1. http 접속 허용하기 # /etc/nginx/conf.d/test.conf server { listen 80; server_name DNS주소; root /var/www/terminal-app/public; index index.html; } 2. Certbot으로 ssl인증서 연동. https 연결 허가하기 # 인증서 목록 확인 sudo certbot certificates # 인증서 발급받기 sudo certbot certonly --standalone -d DNS주소 sudo certbot --nginx 인증서를 발급받으려면 다음 ..

Server/Linux 2022.05.12

NestJS-AWS-PM2-EC2-NGINX-Certbot 서버 열어주기

-- DNS를 먼저 셋팅한다. 0. EC2 Setting sudo apt-get update sudo apt-get install nginx sudo apt-get install certbot npm i -g pm2 1. PM2 연동 # repository pm2 start dist/main.js 2. http 접속 허용하기 server { listen 80; server_name DNS주소; location / { proxy_passhttp://127.0.0.1:3000; proxy_set_headerupgrade $http_upgrade; proxy_set_header Connection keep-alive; proxy_set_headerHost $host; proxy_cache_bypass$http..

Server/Linux 2022.05.12

AWS EC2 인스턴스에서 PostgreSQL DB 백업하는 crontab 만들기

sql을 백업하려했지만, 용량이 엄청나다고 한다. 그래서 tar 압축버전을 사용하는데, PostgreSQL은 tar파일로 백업, 복구가 가능하다. https://ko.linux-console.net/?p=328 DB를 백업하는 sh를 작성하고, 해당 sh를 매월 사용자가 적은 시간대에 자동 실행하는 크론탭을 만들었다. 인스턴스에서 ls로 목록을 살펴보면 자동실행되는 쉘스크립트를 작성해뒀다. 아래 스크립트는 해당 날짜 폴더를 만들어 PostgreSQL DB를 백업하는 명령어다. #!/bin/sh BACKUP_DATE=$(date +%Y%m%d) mkdir /home/ubuntu/db_backup/$BACKUP_DATE PGPASSWORD="PASSWD 입력" pg_dump -U admin -h localh..

Server/Linux 2022.02.23

카페24) 포트포워딩, 고정포워딩으로 걸린 frameset 해제하기

카페24 도메인 포트포워딩을 고정포워딩으로 사용하면 frameset이 씌워져 모바일 반응형 css가 적용되지 않는다. 이 문제는 포트포워딩을 바꾸면 해결된다. AWS EC2에서 frontend PORT를 카페24 도메인 포워딩으로 연결해놨다면 해당 문제가 발생할 것이다. -해결방법 1. 80번 포트를 개방해서 아파치2 리버스 프록시를 설정해준다. 포트번호 없이 접속해도 프론트엔드 포트로 접속할 수 있도록. 해당 방법은 apache2 reverse-proxy 관련 글을 작성해뒀으니 참고하자. 2. 카페24 포워딩 관리에서 고정포워딩으로 ip주소를 적어놨을 것이다. 해당 포워딩을 삭제하고 도메인만 남겨놓는다. 도메인 부가서비스의 DNS관리에서 해당 도메인을 호스트IP(레코드)관리로 접속을 허용해준다. 이렇게..

Server/Linux 2022.02.21

AWS, GCP) Ubuntu에서 pm2로 배포하기.

먼저 nvm 설치하자. curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash nvm 실행을 위해서 다음과 같이 입력. source ~/.bashrc 버전을 확인하고, 문제가 없으면 NodeJS 설치. nvm --version nvm install 14 나는 14버젼을 주로 사용한다. PostgreSQL 설치법은 나중에 공유하겠다. 전역으로 사용하기 위한 pm2 설치. npm i -g pm2 배포시킬 프로젝트에서 npm 스크립트나 node, babel-node 등을 실행하면 된다. pm2 start "npm run babel" --name "변경할 이름" // "script":{ //"babel": "babe..

Server/Linux 2022.02.15