Nginx (엔진엑스)는 경량급 웹서버입니다.
웹사이트를 만든다고 하면 한때는
아파치(Apache) 서버가 중심이었습니다.
아파치는 역사가 벌써 오래되었고
다양한 기능과 안정성이 있는 서버입니다.
리눅스에 아파치를 서버와 MySQL을
쓰는 것이 대세였는데 최근에는
가볍고 성능을 중시하는 NGINX를
많이 사용하는 추세입니다.
https, ssl, php-fastcgi, reverse proxy 등
서비스 기능이 있으며 WAS에 대한
로드밸런서 역할을 합니다.
설정이 심플하고 대용량 처리도 가능해서
웹사이트를 빠르게 구축하려면
Nginx 는 좋은 선택이 될 수 있습니다.
호스팅 사이트나 클라우드 컴퓨팅에
쉽게 설치해서 사용할 수 있기 때문에
웹사이트를 바로 배포하기 좋습니다.
AWS 도 그렇고 웬만한 호스팅에서는
클릭만 하면 바로 이미지가 설치가
되는데 간단한 설정을 거치면 바로
서비스가 가능합니다.
윈도우는 아래 공식 사이트를 참고합니다.
이 포스팅은 WSL2에 우분투를 설치합니다.
아래의 커맨드로 nginx를 설치합니다.
sudo apt update
sudo apt install nginx
nginx 버전을 체크해서 설치를 확인합니다.
nginx -v
설정파일이 올바른지 체크합니다.
문법(syntax)과 text 성공여부를 리턴합니다.
sudo nginx -t
*실행결과:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
설정파일 내용은 아래의 커맨드로
볼 수 있습니다. 모든 설정 파일들을
보여주는데 리눅스 배포에 따라
위치가 다를 수 있습니다.
sudo nginx -T
WSL2 우분투의 경우 default configuration은
다음의 위치에 있습니다.
cat /etc/nginx/sites-enabled/default
이제 메인 파일이 중요한데 vi나
nano에디터로 다음 파일을 열어봅니다.
vi /etc/nginx/nginx.conf
여기서 중요한 라인은 include 입니다.
WSL2 경우 아래와 같이 추가되어 있을겁니다.
위의 default 파일은 sites-enabled에 있었습니다.
여기에 넣는 *(모든파일).conf는 설정에 추가됩니다.
이 안에다 커스텀 설정 파일을 만들어서
각종 내용을 추가할 수 있습니다.
파일들을 왔다갔다 하다보면
좀 헷갈릴 수 있으나 파일을
작성해보면 알 수 있을 것 입니다.
include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;
서버를 시작합니다.
sudo service nginx start
WSL2에서는 systemctl 명령어
사용이 안되기 때문에 service 를 씁니다.
웹브라우저에서 localhost 으로 접속해서
다음과 같이 웹페이지가 실행되면
nginx가 잘 설치된 것 입니다.
netstat으로 현재 실행중인 포트를
확인하면 80 및 conf에 설정한
tcp 서비스의 상태가 나옵니다.
netstat -lntup
default 설정파일의 Server 블록에
다음의 내용은 80 포트 요청에
root 디렉토리입니다. 그안에
index.html 파일이 있습니다.
listen 80;
root /var/www/html;
include폴더에 다음의 설정 파일을
추가하고 테스트 해보겠습니다.
9001 포트를 요청하면 메시지를 보냅니다.
# configuration file /etc/nginx/conf.d/web.conf:
server {
listen 9001;
location / {
return 200 "you have reached App 1\n";
}
}
다음의 커맨드로 return 문자열이
돌아오는지 확인합니다. 그 전에
설정을 수정했다면 reload 합니다.
sudo nginx -s reload
curl localhost:9001
bootstrap으로 뚝딱하면 반응형
웹사이트의 와꾸도 만들 수 있습니다.
Learn Proper NGINX Configuration Context Logic - YouTube
PHP 개발을 위한 XAMPP 의 설치 | Hello World! | 윈도우 10