CentOS 6에서 Apache 가상 호스트를 설정하는 방법
상태: 더 이상 사용되지 않음
이 문서에서는 더 이상 지원되지 않는 CentOS 버전에 대해 설명합니다. 현재 CentOS 6을 실행하는 서버를 운영 중인 경우 지원되는 버전의 CentOS로 업그레이드하거나 마이그레이션하는 것이 좋습니다.
이유:
대신 참조:
다음 DigitalOcean 자습서에서는 CentOS 7 서버에 Apache 웹 서버를 설치하는 방법과 가상 호스트 파일을 설정하는 방법에 대해 설명합니다.
- CentOS 7에 Apache 웹 서버를 설치하는 방법
가상 호스트 정보
가상 호스트는 단일 IP 주소에서 둘 이상의 도메인을 실행하는 데 사용됩니다. 이것은 하나의 가상 사설 서버에서 여러 사이트를 실행해야 하는 사람들에게 특히 유용합니다. 사이트는 사용자가 사이트에 액세스한 방법에 따라 방문자에게 다른 정보를 표시합니다. VPS에 추가할 수 있는 가상 호스트의 수에는 제한이 없습니다.
설정
이 자습서의 단계를 수행하려면 사용자에게 루트 권한이 있어야 합니다. 3단계와 4단계의 초기 서버 설정에서 설정하는 방법을 확인할 수 있습니다. 또한 단계에서 사용자를 참조하는 경우 www라는 이름을 사용합니다. 자신에게 맞는 사용자 이름을 구현할 수 있습니다.
또한 Apache가 가상 서버에 이미 설치되어 실행 중이어야 합니다. 그렇지 않은 경우 다음 명령을 사용하여 다운로드할 수 있습니다.
sudo yum install httpd
1단계 - 새 디렉터리 만들기
가상 호스트 생성의 첫 번째 단계는 새 웹사이트의 정보를 보관할 디렉토리를 생성하는 것입니다.
이 위치는 나중에 Apache 가상 구성 파일의 문서 루트가 됩니다. 코드 줄에 -p를 추가하면 이 명령은 새 디렉터리의 모든 부모를 자동으로 생성합니다.
sudo mkdir -p /var/www/example.com/public_html
가상 호스트가 작동하는지 테스트하려면 실제 DNS 승인 도메인 또는 IP 주소를 지정해야 합니다. 이 자습서에서는 올바른 도메인 이름에 대한 자리 표시자로 example.com을 사용합니다.
그러나 승인되지 않은 도메인 이름을 사용하여 프로세스를 테스트하려는 경우 6단계에서 로컬 컴퓨터에서 작동하게 만드는 방법에 대한 정보를 찾을 수 있습니다.
2단계 - 권한 부여
루트 시스템에 디렉터리를 유지하는 대신 사용자에게 디렉터리 소유권을 부여해야 합니다.
sudo chown -R apache:apache /var/www/example.com/public_html
또한 모든 사람이 새 파일을 읽을 수 있도록 하는 것이 중요합니다.
sudo chmod 755 /var/www
이제 모든 권한이 완료되었습니다.
3단계 - 페이지 만들기
구성 디렉토리 내에 index.html이라는 새 파일을 만들어야 합니다.
sudo vi /var/www/example.com/public_html/index.html
파일에 일부 텍스트를 추가하여 IP가 가상 호스트로 리디렉션될 때 볼 수 있도록 할 수 있습니다.
<html> <head> <title>www.example.com</title> </head> <body> <h1>Success: You Have Set Up a Virtual Host</h1> </body> </html>
저장 및 종료
4단계 - 가상 호스트 켜기
다음 단계는 Apache 구성 파일 자체에 들어가는 것입니다.
sudo vi /etc/httpd/conf/httpd.conf
찾아야 할 몇 줄이 있습니다.
텍스트가 아래에 보이는 것과 일치하는지 확인하세요.
#Listen 12.34.56.78:80 Listen 80
문서 맨 아래로 스크롤하여 Virtual Hosts라는 섹션으로 이동합니다.
NameVirtualHost *:80 # # NOTE: NameVirtualHost cannot be used without a port specifier # (e.g. :80) if mod_ssl is being used, due to the nature of the # SSL protocol. # # # VirtualHost example: # Almost any Apache directive may go into a VirtualHost container. # The first VirtualHost section is used for requests without a known # server name. # <VirtualHost *:80> ServerAdmin webmaster@example.com DocumentRoot /var/www/example.com/public_html ServerName www.example.com ServerAlias example.com ErrorLog /var/www/example.com/error.log CustomLog /var/www/example.com/requests.log </VirtualHost>
집중해야 할 가장 중요한 행은 NameVirtualHost, 가상 호스트, 문서 루트 및 서버 이름을 말하는 행입니다. 한 번에 하나씩 가져 갑시다.
- 변경하지 않고 NameVirtualHost의 주석을 제거합니다(숫자 기호 제거). 별표는 포트 80을 통과하는 모든 IP 주소가 가상 호스트임을 의미합니다. 시스템에 IP 주소가 하나만 있을 수 있으므로 문제가 되지 않습니다. 그러나 원하는 경우 별표를 IP 주소로 바꿀 수 있습니다.
- <VirtualHost *:80> 행에 도달할 때까지 나머지 숫자 표시를 그대로 둘 수 있습니다. 거기에서 <VirtualHost>를 통해 모든 주석을 제거하십시오.
- <VirtualHost *:80>을 그대로 둡니다. 해당 세부 정보는 NameVirtual Host 섹션의 세부 정보와 일치해야 합니다. 해당 섹션에서 별표를 IP 주소로 바꾼 경우 여기에서도 동일하게 수행해야 합니다.
- 문서 루트가 핵심입니다! 이 섹션에서는 1단계에서 만든 새 디렉터리의 확장자를 작성합니다. 문서 루트가 올바르지 않거나 없으면 가상 호스트를 설정할 수 없습니다.
- 서버 이름은 가상 호스트의 도메인 이름(예: www.example.com)을 포함하는 또 다른 중요한 정보입니다. 도메인 전체를 철자했는지 확인하십시오. 다음 줄에 대체 가능성을 입력합니다.
- ServerAlias는 기본적으로 존재하지 않는 구성 파일의 새 줄입니다. 이를 추가하면 예를 들어 앞에 www가 없는 등 도메인 이름의 몇 가지 변형을 나열할 수 있습니다.
이 섹션의 나머지 줄은 가상 호스트를 설정하는 데 필요하지 않습니다. 그러나 그들이 하는 일을 아는 것은 여전히 도움이 됩니다.
- 서버 관리자가 웹마스터의 이메일을 요청합니다.
- 오류 로그 및 사용자 정의 로그는 서버의 모든 문제를 추적합니다. 오류 로그는 서버를 유지 관리하는 동안 발생하는 문제를 다루고 사용자 지정 로그는 서버 요청을 추적합니다. 이러한 프로세스에 대한 사용자 지정 위치를 설정할 수 있습니다.
- <VirtualHost>의 주석이 제거되었는지 확인하십시오. 그런 다음 저장하고 종료합니다.
5단계 - Apache 다시 시작
구성을 많이 변경했습니다. 그러나 Apache를 다시 시작할 때까지 적용되지 않습니다.
먼저 모든 아파치 프로세스를 중지합니다.
sudo apachectl -k stop
그런 다음 아파치를 다시 시작하십시오.
sudo /etc/init.d/httpd start
다음 오류가 표시될 수 있습니다.
Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
이 메시지는 단지 경고일 뿐이며 추가 문제 없이 가상 호스트에 액세스할 수 있습니다.
선택적 6단계 - 로컬 호스트 설정
도메인 이름을 가상 사설 서버의 IP 주소로 지정한 경우 이 단계를 건너뛸 수 있습니다. 로컬 호스트를 설정할 필요가 없습니다. 가상 호스트가 작동해야 합니다. 그러나 실제 도메인 이름에 연결하지 않고 새 가상 호스트를 사용하려면 컴퓨터에만 로컬 호스트를 설정할 수 있습니다.
이 단계를 진행하려면 컴퓨터의 관리 암호를 알아야 합니다. 그렇지 않으면 실제 도메인 이름을 사용하여 가상 호스트를 테스트해야 합니다.
Mac 또는 Linux를 사용하는 경우 컴퓨터에서 루트 사용자(su
)에 액세스하고 호스트 파일을 엽니다.
nano /etc/hosts
Windows 컴퓨터를 사용 중인 경우 Microsoft 사이트에서 호스트 파일을 변경하는 지침을 찾을 수 있습니다.
아래 예와 같이 이 파일에 로컬 호스트 세부 정보를 추가할 수 있습니다. 해당 줄이 있는 한 브라우저를 example.com으로 이동하면 해당 IP 주소에 대한 모든 가상 호스트 세부 정보가 제공됩니다.
# Host Database # # localhost is used to configure the loopback interface # when the system is booting. Do not change this entry. ## 127.0.0.1 localhost #Virtual Hosts 12.34.56.789 www.example.com
그러나 나중에 혼란을 피하기 위해 완료되면 로컬 호스트 폴더에서 이러한 구성된 주소를 삭제하는 것이 좋습니다.
7단계 - 결과: 작동 중인 가상 호스트 보기
가상 호스트 설정을 마치면 온라인 상태를 확인할 수 있습니다. 브라우저에 IP 주소를 입력합니다(예: http://12.34.56.789).