Server14 nginx CORS 처리 nginx 에 특정 도메인에 대해 CORS 를 오픈해줄때 (mydomain.com) . . location ^~ /emoticons { # CORS 헤더 추가 add_header 'Access-Control-Allow-Origin' 'https://mydomain.com' always; add_header 'Access-Control-Allow-Methods' 'GET' always; add_header 'Access-Control-Allow-Headers' 'Authorization,Content-Type' always; # OPTIONS 요청에 대한 처리 .. 2025. 2. 26. scp 원격 파일 전송 현재서버에서 원격지 서버로 파일 전송scp -P 9999 /home/local/a.txt userid@remote_ip:/home/userid * 위 예제는 현재 서버의 /home/local/a.txt 파일을 원격지에(포트 9999) userid 계정으로 전송하기 (원격지 파일 저장 위치 : /home/userid* 실행시 원격지 계정의 비밀번호 입력 필요. 끝. 2025. 2. 12. 리눅스 : 주기적으로 현재시각 맞추기 (cron) 아래 코드를 크론에 등록하여 매일 정해진 시각에 인터넷 타임서버에 접속하여 시각 맞추기 crontab -e0 4 * * * /usr/sbin/rdate -s time.bora.net* 매일 오전 4시 정각에 time.bora.net 에 접속하여 시각 맞추기 끝. 2024. 12. 24. ubuntu22.04에 apache2, nodejs, postgresql 설치 1. 저장소 업데이트 apt update && apt upgrade 2. 아파치 설치apt install apache2service apache2 start 3. postgresql 설치apt install postgresql postgresql-contribpsql --versionservice postgresql start 4. nodejs npm 설치apt updateapt install nodejs npmnode -v 5. node 서버를 띄울 계정으로 로그인 후 - nvm 설치curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bashsource ~/.bashrc 6. node 최신 목록 조회nvm list-rem.. 2024. 11. 13. ubuntu:22.04 도커이미지 내려받고, 컨테이너 올리기 (포트포워딩 + 공유디렉토리 설정) 1. 이미지 내려받기docker pull ubuntu:22.04 2. 내려받은 이미지로 컨테이너 올리기 docker run -it -p 8888:80 -p 5432:5432 -v /Users/{myid}/myproject/docker/www:/www --name Ubuntu2204 ubuntu:22.04 - 내려받은 이미지 ubuntu:22.04 를 이용해서 Ubuntu2204 라는 이름으로 컨테이너 생성 - 포트포워딩 : 8888->80(apache2), 5432->5432(postgreSQL) : 내 컴퓨터에 8888번 포트로 접속하면 도커 80 번 포트로 연결 : 내 컴퓨터에 5432번 포트로 접속하면 도커 5432번 포트로 연결 - 공유디렉토리 마운트 : 내 컴퓨터의 경로.. 2024. 11. 13. nginx cache 설정하기 nginx cache 설정하여 api 응답 속도 개선 및 api 서버 처리 부담 줄이기 캐시키는 매모리에 저장하고, 데이터는 hdd 에 저장된다. 캐시파일 저장디렉토리는 "/var/cache/nginx" 를 사용할 것이므로 미리 만들어 놓는다. 1. /etc/nginx/nginx.conf 파일에 proxy_cache_path 항목 추가# cache proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=sketch_cache:10m max_size=1g inactive=60m use_temp_path=off * /var/cache/nginx : 캐시파일을 저장할 경로를 설정한다. * levels=1:2 : 위에서 설정한 저장 경로 아래에 2단계 디렉터리 계층 .. 2024. 11. 13. 프록시 통해서 전달되는 svg 파일도 gzip 압축하여 전송 설정 프록시 설정을 하면, 이를 통해서 전송되는 컨텐츠는 content-type 이 "application/octet-stream" 로 전송됨으로 인해 svg 파일이 압축되지 않고 전달된다. 이를 처리하기 위해서는 아래와 같이 설정한다. 1. /etc/nginx/nginx.conf 에 설정 추가http { ## # Basic Settings ## . . . ## # 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/j.. 2024. 6. 6. nginx 파일 업로드 최대 용량 제한 nginx 파일 업로드 최대 용량 제한 /etc/nginx/sites-available/default 파일 수정 server { . . . # 파일 업로드 최대 용량 제한 client_max_body_size 5m; . . . } 2024. 6. 6. nginx proxy 설정 /etc/nginx/sites-available/default 파일 수정server { . . . location ^~ /api { proxy_pass http://localhost:8080; proxy_http_version 1.1; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; } location ^~ /service { proxy_pass http://localhost:8080; .. 2024. 6. 6. nginx gzip 설정 (웹사이트 컨텐츠 압축하여 전송) 웹서버에서 데이터 전송시 데이터를 압축해서 보내도록 하는 gzip 설정 부분이다. nginx 설정파일 을 열어 아래와 같이 설정한다. vi /etc/nginx/nginx.conf http 항목 http { ## # Basic Settings ## . . . ## # 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.. 2024. 6. 6. ubuntu(22.04) + nginx + 무료ssl (let's Encrypt) 인증서 설치 ubuntu(22.04) + nginx + ssl (let's Encrypt) 인증서 설치 1. snap 설치 (certbot 설치 권장 )snap install core; snap refresh coreapt remove certbotsnap install --classic certbotln -s /snap/bin/certbot /usr/bin/certbot 2. 도메인별 인증서 설치certbot --nginx -d mydomain.com -d www.mydomain.com -d api.mydomain.com * 서브도메인 필요한만큼 추가위처럼 같은 도메인의 서브 도메인들은 명령 한번에 모두 모아서 한다. 만약 위에서 빼먹었다고 아래 처럼 별도로 또 추가하면 인증서 파일이 별도로 만들어진다.certb.. 2024. 6. 6. React를 위한 nginx 설치 및 세팅 nginx 설치apt-get install nginx 설정 파일 수정vi /etc/nginx/sites-enabled/default server { listen 8080 default_server; # 저장 후 스타트service nginx start . 2024. 6. 6. 이전 1 2 다음