Nice programing

nginx 및 사이트에서 여러 웹 사이트 사용 가능

nicepro 2020. 11. 4. 08:26
반응형

nginx 및 사이트에서 여러 웹 사이트 사용 가능


nginx의 기본 설치를 사용하면 sites-available폴더에 파일이 하나만 있습니다.default

sites-available폴더 는 어떻게 작동하며 여러 (별도의) 웹 사이트를 호스팅하는 데 어떻게 사용합니까?


다른 방법을 추가하기 위해 호스팅하는 각 가상 도메인 또는 사이트에 대해 별도의 파일을 사용할 수 있습니다. 기본값 사본을 각각의 시작점으로 사용하고 각 사이트에 대해 사용자 정의 할 수 있습니다.
그런 다음 활성화 된 사이트에서 심볼릭 링크를 만듭니다. 이런 식으로 심볼릭 링크를 추가하거나 제거하고 서비스 nginx 다시로드를 실행하여 사이트를 위아래로 이동할 수 있습니다.

사이트 유지 관리를 수행하는 동안 창의력을 발휘하고이 방법을 사용하여 사이트를 유지 관리 모드 페이지로 리디렉션 할 수 있습니다.

따라서 구조는 다음과 같습니다.

/sites-available/ (you can use obvious file names like this)
| 
|-> a.mysite.com
|-> b.mysite.com
|-> someOtherSite.com

/sites-enabled/ (these are just symlinks to the real files in /sites-available)
| 
|-> a.mysite.com
|-> b.mysite.com

에서 심볼릭 링크 된 항목은 처음 두 항목뿐이므로 sites-enabled세 번째 항목 someOtherSite.com은 오프라인 상태입니다.


를 보면 디렉토리의 모든 파일을 포함하는 지시문을 nginx.conf찾을 수 있습니다. 이 디렉토리는 구성의 일부를 쉽게 켜고 끌 수 있도록 구성 파일에 대한 심볼릭 링크를 저장 합니다.includesites-enabledsites-available

보시다시피이 디렉토리에는 마법이 없습니다.

여러 웹 사이트를 호스팅하려면 여러 server블록 및 / 또는 server_name지시문 을 사용해야합니다 . 공식 튜토리얼은 여기에 있습니다 : 서버 이름nginx가 요청을 처리하는 방법 .


활성화 된 사이트에서 사용할 수있는 사이트에서 기본 파일을 심볼릭 링크합니다. 그런 다음 사용 가능한 사이트를 수정하여 각각 다른 server_name을 가진 두 개의 서버 블록을 포함합니다. 다음을 참조하십시오. 여기에서는 example.com 및 example2.com이라는 도메인이 필요하다고 가정합니다. 또한 @records를 nginx를 설치 한 서버의 IP 주소로 지정했을 것입니다.

사용 가능한 사이트를 활성화 된 사이트에 심볼릭 링크

sudo ln -s /etc/nginx/sites-available/default /etc/nginx/sites-enabled/default

선택한 편집기를 사용하여 파일 편집 (vim for me)

sudo vi /etc/nginx/sites-available/default

다음은 포트 4567 및 4568에서 웹 앱을 실행한다고 가정 한 nginx conf의 작업 내용입니다.

server {

    server_name www.example.com

    location / {
        proxy_pass http://localhost:4567/;
    }

}


server {

    server_name www.example2.com

    location {
        proxy_pass http://localhost:4568/;
    }

}

참고 URL : https://stackoverflow.com/questions/11693135/multiple-websites-on-nginx-sites-available

반응형