nginx란?
웹 서버 소프트웨어로, 가벼움과 높은 성능을 목표로 한다. 웹 서버, 리버스 프록시 및 메일 프록시 기능을 가진다.
$ sudo apt-get install nginx
nginx 설정 파일 수정
$ sudo vi /etc/nginx/nginx.conf
http {}
블록 끝에 구문 추가
include /etc/nginx/sites-enabled/*.conf; // sites-enabled 디렉토리에서 서버 블록을 찾도록 지시
server_names_hash_bucket_size 64; // 도메인이름 분석하는데 할당되는 메모리 양
$ sudo vi /etc/nginx/sites-available/도메인이름(프로토콜 제외).conf
/etc/nginx/sites-available/도메인이름(프로토콜 제외).conf
아래 내용 입력
server {
listen 80;
server_name 도메인이름;
location / {
root /var/www/html; //vsftpd 홈디렉토리
index index.html index.htm index.nginx-debian.html;
try_files $uri $uri/ =404;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
}
React build 배포 시
server {
listen 80;
listen [::]:80;
root /var/www;
index index.html index.htm index.nginx-debian.html;
server_name site.com;
location / {
try_files $uri $uri/ @rewrites;
}
location @rewrites {
rewrite ^(.+)$ /index.html last;
}
}
서버 블록 파일 활성화
sudo ln -s /etc/nginx/sites-available/도메인.conf /etc/nginx/sites-enabled/도메인.conf
nginx 재시작
$ sudo systemctl restart nginx
nginx log 확인
$ sudo ls /var/log/nginx // access.log error.log
$ sudo tail -f /var/log/nginx/access.log
server_name 을 꼭 도메인으로 해야되나요? 임의로 지정하면 어떻게 되나요??