728x90
반응형

Apache 웹 서버를 사용하다 보면 로에 "AH00548: NameVirtualHost has no effect and will be removed in the next release"와 같은 메시지를 보게 될 때가 있다. 이는 Apache 2.4 버전에서 나타나는 경고 메시지로, 다음 릴리즈에서는 해당 구문이 제거될 예정임을 알리는 것이다. 이 메시지의 원인과 해결 방법에 대해 알아보자.

 

원인

Apache 설정 파일에서 NamevirtualHost 지시어가 더 이상 사용할 필요가 없기 때문에 출력된다.

Apache 2.2 버전에서는 여러 가상 호스트를 설정하기 위해 NameVirtualHost 지시어를 사용해야 했다.

하지만 Apache 2.4 버전부터는 이 지시어가 필요 없도록 변경되었다.

Apache 2.4에서는 VirtualHost 지시어만으로도 가상 호스트를 설정할 수 있다.

 

조치사항

1. Apache 설정 파일 열기

#보통 아래와 같은 경로에 있음
vim /etc/httpd/conf/httpd.conf

 

2. NameVirtualHost 지시어 제거

#아래와 같은 라인을 주석 처리한다.
NameVirtualHost *:80

 

3. 가상 호스트 설정 확인

가상 호스트 설정이 여전히 VirtualHost 지시어 사용하는 지 확인
<VirtualHost *:80>
    ServerName example.com
    DocumentRoot /var/www/html/example.com
    ...
</VirtualHost>

<VirtualHost *:80>
    ServerName another-example.com
    DocumentRoot /var/www/html/another-example.com
    ...
</VirtualHost>

 

4. Apache Config 체크 및 재시작

#Syntax 체크
systemctl configtest


#Apache 설정 파일 수정 후 웹서버 재시작
systemctl restart httpd
#또는
systemctl restart apache2

 

요약

Apache 2.4 버전에서는 더 이상 NameVirtualHost 지시어가 필요하지 않으며, 설정 파일에서 이 지시어를 제거하여 경고 메시지를 해결할 수 있다. 
가상 호스트 설정은 VirtualHost 지시어를 통해 계속해서 관리할 수 있다. 
이를 통해 Apache 설정 파일을 최신 버전에 맞게 유지하고, 불필요한 경고 메시지를 제거할 수 있다.


 

728x90
반응형