CentOS 8에서 Nginx 서버 블록을 설정하는 방법

CentOS 8에서 Nginx 서버 블록을 설정하는 방법

2022-05-17 last update

8 minutes reading centos nginx
서버 블록은 특정 도메인에 대한 설정을 정의하는 Nginx 지시문으로, 단일 서버에서 둘 이상의 웹사이트를 실행할 수 있습니다. 각 웹 사이트에 대해 사이트 문서 루트(웹 사이트 파일이 포함된 디렉토리)를 설정하고, 별도의 보안 정책을 만들고, 다른 SSL 인증서를 사용하는 등의 작업을 수행할 수 있습니다. 이 문서에서는 CentOS 8에서 Nginx 서버 블록을 설정하는 방법에 대해 설명합니다. 전제 조건 이 튜토리얼을 계속하기 전에 다음 요구 사항을 충족했는지 확인하십시오.
  • 공용 서버 IP를 가리키는 도메인 이름.
  • Nginx installed on your CentOS
    체계.
  • 루트로 로그인했거나 user with sudo privileges
    .
  • 일부 문서에서는 Server Blocks 라고 합니다 Virtual host .
    A virtual host
    Apache 용어입니다. 디렉터리 구조 만들기 문서 루트는 도메인 이름에 대한 웹 사이트 파일이 저장되고 요청에 대한 응답으로 제공되는 디렉터리입니다. 문서 루트는 원하는 위치로 설정할 수 있습니다. 다음 디렉토리 구조를 사용합니다.
    /var/www/
    ├── example.com
    │   └── public_html
    ├── example2.com
    │   └── public_html
    ├── example3.com
    │   └── public_html
    
    서버에서 호스팅될 각 도메인에 대해 /var/www 안에 별도의 디렉토리를 만듭니다. . 도메인 디렉토리 내에서 public_html 도메인 문서 루트 디렉토리가 될 디렉토리이며 도메인 웹 사이트 파일을 저장할 디렉토리입니다. 도메인의 루트 디렉토리를 만드는 것으로 시작하겠습니다. example.com :
    sudo mkdir -p /var/www/example.com/public_html
    테스트 목적으로 index.html 도메인의 문서 루트 디렉토리에 있는 파일:
    sudo nano /var/www/example.com/public_html/index.html
    다음 코드를 복사하여 파일에 붙여넣습니다./var/www/example.com/public_html/index.html
    <!DOCTYPE html>
    <html lang="en" dir="ltr">
      <head>
        <meta charset="utf-8">
        <title>Welcome to example.com</title>
      </head>
      <body>
        <h1>Success! example.com home page!</h1>
      </body>
    </html>
    
    권한 문제를 방지하려면 change the ownership
    도메인 문서 루트 디렉토리를 사용자에게 nginx :
    sudo chown -R nginx: /var/www/example.com
    서버 블록 만들기 기본적으로 CentOS에서 Nginx 서버 블록 구성 파일은 .conf로 끝나야 합니다. /etc/nginx/conf.d 디렉토리를 엽니다. text editor
    도메인에 대한 구성 파일 생성:
    sudo nano /etc/nginx/conf.d/example.com.conf
    구성 파일의 이름은 원하는 대로 지정할 수 있지만 일반적으로 도메인 이름을 사용하는 것이 가장 좋습니다. 다음 코드를 복사하여 파일에 붙여넣습니다./etc/nginx/conf.d/example.com.conf
    server {
        listen 80;
        listen [::]:80;
    
        root /var/www/example.com/public_html;
    
        index index.html;
    
        server_name example.com www.example.com;
    
        access_log /var/log/nginx/example.com.access.log;
        error_log /var/log/nginx/example.com.error.log;
    
        location / {
            try_files $uri $uri/ =404;
        }
    }
    
    파일을 저장하고 check the Nginx configuration
    구문 오류:
    sudo nginx -t
    오류가 없으면 출력은 다음과 같습니다.
    nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
    nginx: configuration file /etc/nginx/nginx.conf test is successful
    
    Restart the Nginx service
    변경 사항을 적용하려면
    sudo systemctl restart nginx
    마지막으로 서버 블록이 예상대로 작동하는지 확인하려면 http://example.com 선택한 브라우저에 다음과 같은 내용이 표시됩니다.(adsbygoogle = window.adsbygoogle || []).push({}); 결론 우리는 Nginx 서버 블록을 생성하고 단일 CentOS 서버에서 여러 도메인을 호스팅하는 방법을 보여주었습니다. 위에서 설명한 단계를 반복하고 모든 도메인에 대해 추가 서버 블록을 만들 수 있습니다. SSL 인증서로 웹사이트를 보호하려면 무료 Letsencrypt SSL certificate
    .궁금한 점이 있으시면 언제든지 댓글을 남겨주세요.