Apache에서 이름 기반 VirtualHost를 분배
3946 단어 아파치
아파치에 의한 분배 패턴
3가지의 분류 방법이 있다.
이번은
FQDN(ServerName)
로 검증합니다FQDN 기반 VirtualHost
하나의 IP 주소에 복수의 FQDN을 지정해, 각각 다른 Web 서버를 참조하게 하고 싶다.
웹 브라우저가 보내는 http 요청에 Host 헤더가 필요하지만 대부분의 브라우저에서 대응하고 있다.
환경
절차
Apache 설치
yum -y update
yum -y install httpd
systemctl start httpd
각 DocumentRoot 만들기
mkdir /var/www/web10 /var/www/web20 /var/www/web30
echo 'web10.vamdemicsystem.black name-base web-site.' > /var/www/web10/index.html
echo 'web20.vamdemicsystem.black name-base web-site.' > /var/www/web20/index.html
echo 'web30.vamdemicsystem.black name-base web-site.' > /var/www/web30/index.html
httpd.conf의 마지막 줄에 추가
ip 주소가 1개 밖에 없으면 *
로 OK.
복수 있으면 대응하는 IP 주소를 쓴다.
/etc/httpd/conf/httpd.conf# Add VirtualHost
NameVirtualHost *
<VirtualHost *:80>
ServerName web10.vamdemicsystem.black
DocumentRoot /var/www/web10
</VirtualHost>
<VirtualHost *:80>
ServerName web20.vamdemicsystem.black
DocumentRoot /var/www/web20
</VirtualHost>
<VirtualHost *:80>
ServerName web30.vamdemicsystem.black
DocumentRoot /var/www/web30
</VirtualHost>
설정 불러오기
systemctl restart httpd
동작 확인
서버 자체에서
호스트에 각각의 FQDN 작성
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost6 localhost6.localdomain6
127.0.0.1 web10.vamdemicsystem.black
127.0.0.1 web20.vamdemicsystem.black
127.0.0.1 web30.vamdemicsystem.black
curl로 확인하면 괜찮은 것으로 나누어진 것 같다. OK!
localhost는 Web10을 다루는 이유는 무엇입니까?
[root@ip-172-31-38-89 ~]# curl http://web10.vamdemicsystem.black
web10.vamdemicsystem.black name-base web-site.
[root@ip-172-31-38-89 ~]# curl http://web20.vamdemicsystem.black
web20.vamdemicsystem.black name-base web-site.
[root@ip-172-31-38-89 ~]# curl http://web30.vamdemicsystem.black
web30.vamdemicsystem.black name-base web-site.
[root@ip-172-31-38-89 ~]# curl http://web40.vamdemicsystem.black
curl: (6) Could not resolve host: web40.vamdemicsystem.black
[root@ip-172-31-38-89 ~]# curl http://localhost
web10.vamdemicsystem.black name-base web-site.
[root@ip-172-31-38-89 ~]#
외부에서도 확인
DNS 서버에 등록
web10OK!
web20OK!
web30OK!
Reference
이 문제에 관하여(Apache에서 이름 기반 VirtualHost를 분배), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/yuta_vamdemic/items/921799301836a67e54cf
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
yum -y update
yum -y install httpd
systemctl start httpd
mkdir /var/www/web10 /var/www/web20 /var/www/web30
echo 'web10.vamdemicsystem.black name-base web-site.' > /var/www/web10/index.html
echo 'web20.vamdemicsystem.black name-base web-site.' > /var/www/web20/index.html
echo 'web30.vamdemicsystem.black name-base web-site.' > /var/www/web30/index.html
# Add VirtualHost
NameVirtualHost *
<VirtualHost *:80>
ServerName web10.vamdemicsystem.black
DocumentRoot /var/www/web10
</VirtualHost>
<VirtualHost *:80>
ServerName web20.vamdemicsystem.black
DocumentRoot /var/www/web20
</VirtualHost>
<VirtualHost *:80>
ServerName web30.vamdemicsystem.black
DocumentRoot /var/www/web30
</VirtualHost>
systemctl restart httpd
서버 자체에서
호스트에 각각의 FQDN 작성
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost6 localhost6.localdomain6
127.0.0.1 web10.vamdemicsystem.black
127.0.0.1 web20.vamdemicsystem.black
127.0.0.1 web30.vamdemicsystem.black
curl로 확인하면 괜찮은 것으로 나누어진 것 같다. OK!
localhost는 Web10을 다루는 이유는 무엇입니까?
[root@ip-172-31-38-89 ~]# curl http://web10.vamdemicsystem.black
web10.vamdemicsystem.black name-base web-site.
[root@ip-172-31-38-89 ~]# curl http://web20.vamdemicsystem.black
web20.vamdemicsystem.black name-base web-site.
[root@ip-172-31-38-89 ~]# curl http://web30.vamdemicsystem.black
web30.vamdemicsystem.black name-base web-site.
[root@ip-172-31-38-89 ~]# curl http://web40.vamdemicsystem.black
curl: (6) Could not resolve host: web40.vamdemicsystem.black
[root@ip-172-31-38-89 ~]# curl http://localhost
web10.vamdemicsystem.black name-base web-site.
[root@ip-172-31-38-89 ~]#
외부에서도 확인
DNS 서버에 등록
web10OK!
web20OK!
web30OK!
Reference
이 문제에 관하여(Apache에서 이름 기반 VirtualHost를 분배), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/yuta_vamdemic/items/921799301836a67e54cf텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)