Nginx
Nginx
엔진엑스(Nginx)는 Igor Sysoev라는 러시아 개발자가 동시접속 특화 웹 서버 프로그램입니다.
동시 접속자가 많은 서버에서는, 아파치보다 더 뛰어난 성능을 보인다고 합니다.
Nginx의 역할
1. 정적 파일을 제공하는 HTTP서버 역할
2. 다른 HTTP서버에 요청을 전달하는 리버스 프록시 역할
3. 메일서버에 요청을 전달하는 메일 프록시 역할
이 외에도 캐싱, 로드 밸런싱, FLV, MP4 스트리밍, SSL, 로깅등의 기능을 지원합니다.
Nginx 설치
대부분의 리눅스 배포판 패키지 관리자에서 Nginx를 설치할 수 있습니다.
우분투, 데비안
sudo apt update
sudo apt install nginx
RHEL, CentOS
RHEL
sudo cat << EOF > /etc/yum.repos.d/nginx.repo
[nginx]
name=Nginx Repository \$basearch - Archive
baseurl=http://nginx.org/packages/centos/\$releasever/\$basearch/
enabled=1
gpgcheck=1
gpgkey=https://nginx.org/keys/nginx_signing.key
EOF
sudo yum install nginx
CentOS
sudo cat << EOF > /etc/yum.repos.d/nginx.repo
[nginx]
name=Nginx Repository \$basearch - Archive
baseurl=http://nginx.org/packages/centos/\$releasever/\$basearch/
enabled=1
gpgcheck=1
gpgkey=https://nginx.org/keys/nginx_signing.key
EOF
sudo yum install nginx
Nginx 서비스 시작하기
sudo service nginx start
혹은
sudo systemctl start nginx
서비스 실행후 웹브라우저로 자신의 서버에 접속하면 아래의 페이지가 나타나면 성공입니다.
Nginx 기본 구성
Nginx
설치하면 /etc/nginx
에 아래와 같은 디렉토리, 파일들이 생성 됩니다.
├── conf.d # nginx.conf에서 읽을 파일 저장
├── fastcgi.conf # FastCGI 설정
├── fastcgi_params
├── koi-utf
├── koi-win
├── mime.types
├── modules-available
├── modules-enabled
│ ├── 50-mod-http-geoip.conf -> /usr/share/nginx/modules-available/mod-http-geoip.conf
│ ├── 50-mod-http-image-filter.conf -> /usr/share/nginx/modules-available/mod-http-image-filter.conf
│ ├── 50-mod-http-xslt-filter.conf -> /usr/share/nginx/modules-available/mod-http-xslt-filter.conf
│ ├── 50-mod-mail.conf -> /usr/share/nginx/modules-available/mod-mail.conf
│ └── 50-mod-stream.conf -> /usr/share/nginx/modules-available/mod-stream.conf
├── nginx.conf # 접속자 수, 프로세스 수 등 nginx의 기본 설정
├── proxy_params
├── scgi_params
├── sites-available # 비활성화된 사이트 설정 파일
│ └── default
├── sites-enabled
│ └── default -> /etc/nginx/sites-available/default # 활성화된 사이트들의 설정 파일
├── snippets
│ ├── fastcgi-php.conf
│ └── snakeoil.conf
├── uwsgi_params
└── win-utf