라이브러리
[NGINX] server_name - 서버의 이름을 설정합니다.
NGINX에서 `server_name`은 서버가 요청을 처리하기 전에 요청 헤더의 `Host` 필드를 확인하여 요청을 처리할 서버를 결정하는 데 사용되는 디렉티브입니다.
server_name 디렉티브의 기본 사용법
`server_name` 디렉티브는 NGINX 구성 파일에서 사용됩니다. 이 디렉티브는 서버 이름을 지정하여 NGINX가 요청을 처리할 서버를 결정하도록 합니다.
# 예제 1: 단일 서버 이름
이 예제에서는 `example.com` 서버 이름을 지정하여 NGINX가 요청을 처리할 서버를 결정합니다. NGINX는 `example.com` 도메인에 대한 요청을 처리할 때 이 서버 블록을 사용합니다.
# 예제 2: 여러 서버 이름
이 예제에서는 `example.com` 및 `www.example.com` 서버 이름을 지정하여 NGINX가 요청을 처리할 서버를 결정합니다. NGINX는 `example.com` 및 `www.example.com` 도메인에 대한 요청을 처리할 때 이 서버 블록을 사용합니다.
# 예제 3: 서버 이름의 우선순위
이 예제에서는 `example.com` 서버 이름을 지정한 서버 블록이 `www.example.com` 서버 이름을 지정한 서버 블록보다 우선순위가 높습니다. NGINX는 `example.com` 도메인에 대한 요청을 처리할 때 첫 번째 서버 블록을 사용하고, `www.example.com` 도메인에 대한 요청을 처리할 때 두 번째 서버 블록을 사용합니다.
server_name 디렉티브의 옵션
`server_name` 디렉티브에는 여러 옵션이 있습니다.
# 예제 4: 서버 이름의 정규 표현식
이 예제에서는 서버 이름의 정규 표현식을 사용하여 NGINX가 요청을 처리할 서버를 결정합니다. `~` 기호는 정규 표현식을 사용하도록 NGINX에 알려주고, `^` 기호는 문자열의 시작을 나타내며, `(www.)?`는 `www.`를 옵션으로 사용하도록 허용하며, `example.com$`는 `example.com` 도메인을 지정합니다.
# 예제 5: 서버 이름의 우선순위
이 예제에서는 `example.com` 서버 이름을 지정한 서버 블록이 `www.example.com` 서버 이름을 지정한 서버 블록보다 우선순위가 높습니다. NGINX는 `example.com` 도메인에 대한 요청을 처리할 때 첫 번째 서버 블록을 사용하고, `www.example.com` 도메인에 대한 요청을 처리할 때 두 번째 서버 블록을 사용합니다.
결론
`server_name` 디렉티브는 NGINX에서 요청을 처리할 서버를 결정하는 데 사용되는 디렉티브입니다. 이 디렉티브는 서버 이름을 지정하여 NGINX가 요청을 처리할 서버를 결정하도록 합니다. NGINX는 `server_name` 디렉티브의 옵션을 사용하여 서버 이름의 정규 표현식을 사용하거나, 서버 이름의 우선순위를 지정할 수 있습니다.
server_name 디렉티브의 기본 사용법
`server_name` 디렉티브는 NGINX 구성 파일에서 사용됩니다. 이 디렉티브는 서버 이름을 지정하여 NGINX가 요청을 처리할 서버를 결정하도록 합니다.
# 예제 1: 단일 서버 이름
#hostingforum.kr
nginx
server {
listen 80;
server_name example.com;
location / {
root /var/www/html;
index index.html;
}
}
이 예제에서는 `example.com` 서버 이름을 지정하여 NGINX가 요청을 처리할 서버를 결정합니다. NGINX는 `example.com` 도메인에 대한 요청을 처리할 때 이 서버 블록을 사용합니다.
# 예제 2: 여러 서버 이름
#hostingforum.kr
nginx
server {
listen 80;
server_name example.com www.example.com;
location / {
root /var/www/html;
index index.html;
}
}
이 예제에서는 `example.com` 및 `www.example.com` 서버 이름을 지정하여 NGINX가 요청을 처리할 서버를 결정합니다. NGINX는 `example.com` 및 `www.example.com` 도메인에 대한 요청을 처리할 때 이 서버 블록을 사용합니다.
# 예제 3: 서버 이름의 우선순위
#hostingforum.kr
nginx
server {
listen 80;
server_name example.com;
location / {
root /var/www/html;
index index.html;
}
}
server {
listen 80;
server_name www.example.com;
location / {
root /var/www/html;
index index.html;
}
}
이 예제에서는 `example.com` 서버 이름을 지정한 서버 블록이 `www.example.com` 서버 이름을 지정한 서버 블록보다 우선순위가 높습니다. NGINX는 `example.com` 도메인에 대한 요청을 처리할 때 첫 번째 서버 블록을 사용하고, `www.example.com` 도메인에 대한 요청을 처리할 때 두 번째 서버 블록을 사용합니다.
server_name 디렉티브의 옵션
`server_name` 디렉티브에는 여러 옵션이 있습니다.
# 예제 4: 서버 이름의 정규 표현식
#hostingforum.kr
nginx
server {
listen 80;
server_name ~^(www.)?example.com$;
location / {
root /var/www/html;
index index.html;
}
}
이 예제에서는 서버 이름의 정규 표현식을 사용하여 NGINX가 요청을 처리할 서버를 결정합니다. `~` 기호는 정규 표현식을 사용하도록 NGINX에 알려주고, `^` 기호는 문자열의 시작을 나타내며, `(www.)?`는 `www.`를 옵션으로 사용하도록 허용하며, `example.com$`는 `example.com` 도메인을 지정합니다.
# 예제 5: 서버 이름의 우선순위
#hostingforum.kr
nginx
server {
listen 80;
server_name example.com;
location / {
root /var/www/html;
index index.html;
}
}
server {
listen 80;
server_name www.example.com;
location / {
root /var/www/html;
index index.html;
}
}
이 예제에서는 `example.com` 서버 이름을 지정한 서버 블록이 `www.example.com` 서버 이름을 지정한 서버 블록보다 우선순위가 높습니다. NGINX는 `example.com` 도메인에 대한 요청을 처리할 때 첫 번째 서버 블록을 사용하고, `www.example.com` 도메인에 대한 요청을 처리할 때 두 번째 서버 블록을 사용합니다.
결론
`server_name` 디렉티브는 NGINX에서 요청을 처리할 서버를 결정하는 데 사용되는 디렉티브입니다. 이 디렉티브는 서버 이름을 지정하여 NGINX가 요청을 처리할 서버를 결정하도록 합니다. NGINX는 `server_name` 디렉티브의 옵션을 사용하여 서버 이름의 정규 표현식을 사용하거나, 서버 이름의 우선순위를 지정할 수 있습니다.
댓글목록
등록된 댓글이 없습니다.