HTTP/2 적용

기존 운영하고 있던 서버는 모두 HTTP/1.1을 사용하고 있었으나 이미 출시된지 오래된 프로토콜이고,

최근 대세가 HTTP/2인 관계로 5개 서버 모두 적용하였다.

필수조건인 https의 사용은 이미 certbot을 이용해서 let’s encrpyt에서 SSL 인증서를 받아오고 있으니 패스.

#sudo apt-get install php7.4-fpm
#sudo a2enmod proxy_fcgi
#sudo a2enconf php7.4-fpm
#sudo a2dismod php7.4
#sudo a2dismod mpm_prefork
#sudo a2enmod mpm_event

YOURLS 설치 시 mod php를 사용중이었으나, fpm으로 변경하였고,

HTTP/2에서는 prefork모듈이 지원되지 않아 dismod 처리 후 mpm으로 전환했다.

일부 명령어는 선행작업이 필요하므로, 가급적 명령어 처리시 순서를 맞추면 별 트러블 없이 처리 된다.

#sudo nano /etc/apache2/apache2.conf
또는
#sudo nano /etc/apache2/sites-available/개별-사이트-설정파일.conf

아파치 기준 위와 같이 설정파일에 접근 후 적절히 아래의 코드 한줄만 삽입해주면 된다.

첫번째 줄은 서버 내에서 여러사이트를 운영할 때, 두번째 줄은 사이트별 개별설정을 의미한다.

Protocols h2 https/1.1

위 코드 한줄 입력시 호환이 안되는 클라이언트에서는 HTTP/1.1 나머지는 HTTP/2를 지원한다.

최근에 이르러서는 거의 대부분의 인터넷 브라우저에서 HTTP/2를 지원하기에 큰 문제는 없다.

#sudo apachectl configtest
#sudo /etc/init.d/apache2 restart

설정을 확인 후 Syntax OK가 나오면 서버를 재시작해주고 적용한다.



사이트 로그를 확인하거나 https://s.xeriars.com/y58A에서 적용 여부를 확인 할 수 있다.

댓글 남기기