[NGINX] NGINX설치 방법 (Linux)
·
Linux/Web Application Server
NGINX Download URLhttps://nginx.org/en/download.html 에서 파일을 우클릭해서 주소를 복사합니다. NGINX 설치리눅스 환경에서 Root 로 로그인 하여 파일을 다운로드 받습니다.컴파일까지 완료되면 /appstore/webserver/test_nginx 파일이 생성될 것입니다.# nginx설치할 경로에 디렉토리 생성$ mkdir -p /appstore/webserver/util$ cd /appstore/webserver/util# nginx 다운로드 및 압축 해제$ wget https://nginx.org/download/nginx-1.25.3.tar.gz$ tar zxvf nginx-1.25.3.tar.gz$ cd /appstore/webserver/util/ng..
[Nginx] Nginx에서 upstream을 이용해 부하 분산 하기
·
Linux/Web Application Server
HTTP 부하 분산HTTP 요청을 두 대 이상의 HTTP 서버로 분산하는 방법입니다. 이는 주로 웹 서버에서 동작하는 애플리케이션을 지원합니다.예제 구성upstream backend { server 10.10.12.45:80 weight=1; server app.example.com:80 weight=2; server spare.example.com:80 backup;}server { location / { proxy_pass http://backend; }}TCP 부하 분산TCP 연결을 두 대 이상의 TCP 서버로 분산하는 방법입니다. 이는 레이어 4(TCP/IP 4계층)에서 동작하며 연결을 맺고 데이터를 전송하는 과정에서 세션 상태를 유..
[Server] Nginx, Apche, PHP, Tomcat 버전 정보 숨기기
·
Linux/Web Application Server
톰캣의 버전을 숨기는 이유는 대표적인 보안 취약점으로 안전한 서비스 운영을 위해서 방지가 필요합니다.특정 URL의 헤더 정보 보기아래 정보를 보면 제가 이전에 NGINX-PHP를 연동해두었던 웹서버로 헤더값을 조회하였습니다.이렇게 웹서버에 NGINX의 버전을 몇버전을 사용하고 있는지 그리고 그 다음 서버로 프록시되는 PHP버전까지 나옵니다.$ curl -v -I * Trying :80...* Connected to () port 80> HEAD / HTTP/1.1> Host: > User-Agent: curl/8.6.0> Accept: */*> left intact Apache 버전 정보 숨기기아래와 같이 두줄을 추가합니다. 어디에 넣어도 상관없습니다.$ vi /conf/httpd.confServe..
[Server] 분산 환경에서의 Nginx-PHP-MySQL 설치 및 설정 가이드
·
Linux/Web Application Server
개요2024.06.19 - [Etc] - 분산 환경에서의 Apache, PHP - MySQL 설치 및 설정 가이드 분산 환경에서의 Nginx, PHP, MySQL 설치 및 설정 가이드(1탄)개요저는 카페24 웹 호스팅을 통해 홈페이지를 운영하고 있었으며, 위탁 운영을 하고 있었습니다. 하지만 몇 가지 이유로 인해 홈페이지를 이관 받아 직접 운영하려 했습니다. 그러나 카페24에서wonistorage.tistory.com이 글을 적은 후에 NGINX-PHP-MYSQL을 별도의 서버에서 운영하는 방법을 계속해서 찾아봤지만 정보가 별로 없었습니다.PHPShool 홈페이지도 들어가서 많이 찾아봤는데 정~말 정보가 별로 없어서 글을 적게 되었습니다.간단하게 정리하면ㅡ카페24 웹 호스팅에서 외부 업체를 통해 홈페이지..
[Nginx] client closed connection while...
·
Linux/Web Application Server
이슈 사항 설명Nginx에서 SSL 환경으로 구축, VIP로 설정해서 사용하고 있는데 아래 내용처럼 로그가 계속 발생한다.99와 98은 L4스위치의 IP고 Nginx에서 서비스하기 위해 올린 포트는 8500이라고 나온다.사실 [Info] 로그라서신경을 안써도되긴하는데 뭔가 내용이 클라이언트와 서버간의 연결을 종료 했다고 나오는게 이상하게 느껴졌다.[info] client closed connection while SSL handshaking, client: x.x.x.x, server: 0.0.0.0:8500)그래서 HTTP로 설정을 변경해봤는데 이번엔 변경 되서 나온다.[info] client closed connection while waiting for request, client: x.x.x.99..
[Nginx] 여러개 location 설정하는 방법
·
Linux/Web Application Server
Nginx에서 여러 경로를 location해야 하는 경우가 발생하는데 그렇게하면 config파일이 너무 길어진다. 그래서 아래와 같이 설정 가능하다. 여러개의 location 설정 방법 이처럼 설정하면 총 4개(pay, images, common, js)의 location을 한번에 설정이 가능하다. 참고: 아래 설정은 HTTPS설정입니다. 혹시라도 HTTP를 사용하는 경우 "추가한 내용" 부분만 추가하시면 됩니다. server { listen 8400 ssl; server_name beta.testdomain.com; ssl_protocols TLSv1.2 TLSv1.3; ssl_prefer_server_ciphers on; ssl_ciphers 'ECDHE-ECDSA-AES128-GCM-SHA256:E..
프로메테우스(Prometheus), 그라파나(Grafana)를 Docker Compose로 설치하기
·
Linux/Web Application Server
1. 시작하기에 앞서... 리눅스 서버(CentOS)에서 프로메테우스, 그라파나를 설치할 때 Docker Compose로 설치하는것과 로컬에 설치하는 것에 대해서 정확히 자신이 원하는 환경이 무엇인지 어떻게 관리를 할것이고 이러한 상황에 따른 고려를 하고 설치하는 것이 좋을 것이다. Docker Compose로 설치할 경우: 구축이 빠르고 여러개의 컨테이너를 패키지화하여 한번에 사용이 가능하기 때문이기도하다 구축이 빠르다는 건 Docker Hub에서 이미 이미지로 올려둔 것으로 설치가 가능하기 때문이다. 컨테이너를 패키지화 한다는 건 프로메테우스와 그라파나 각각 2개의 컨테이너를 Docker로 설치할 경우 두개 별도로 컨테이너를 올리고 내리고 해야 하지만 Docker Compose를 이용하면 한번에 이 ..