HTTP/2 là phiên bản chính thức tiếp theo của giao thức HTTP, nhằm cải thiện tốc độ tải web. Nó được bắt nguồn từ giao thức SPDY thử nghiệm trước đó, do Google phát triển ban đầu.
1) Cài đặt OpenSSL, cùng ALPN:
wget https://www.openssl.org/source/old/1.0.2/openssl-1.0.2u.tar.gz tar xzf openssl-1.0.2u.tar.gz cd openssl-1.0.2u ./config --prefix=/usr/local/lib_http2 no-ssl2 no-ssl3 zlib-dynamic -fPIC make depend make install
2) Cài đặt nghttp2:
cd /usr/local/directadmin/custombuild ./build update ./build nghttp2
3) Enable http2 cho apache Apache:
cd /usr/local/directadmin/custombuild mkdir -p custom/ap2 cp -p configure/ap2/configure.apache custom/ap2/configure.apache
Chỉnh sủa file custom/ap2/configure.apache, tìm đến dòng:
"--with-ssl=/usr" \
Thay vào đoạn sau:
"--enable-http2" \ "--enable-ssl-staticlib-deps" \ "--with-ssl=/usr/local/lib_http2" \
Và build lại apache:
./build apache
4) Cấu hình Apache cho phép chạy http2:
echo 'ProtocolsHonorOrder On' >> /etc/httpd/conf/extra/httpd-includes.conf echo 'Protocols h2 h2c http/1.1' >> /etc/httpd/conf/extra/httpd-includes.conf
Update SSL Ciphers ở file /etc/httpd/conf/extra/httpd-ssl.conf:
cd /usr/local/directadmin/custombuild ./build rewrite_confs
Enable HTTP/2 in cURL, Thêm vào đoạn code sau vào /usr/local/directadmin/custombuild/custom/curl/configure.curl:
#!/bin/sh perl -pi -e 's|CURL_CHECK_PKGCONFIG\(zlib\)|#CURL_CHECK_PKGCONFIG(zlib)|g' configure.ac LIBS="-ldl" ./configure --with-nghttp2=/usr/local --with-ssl=/usr/local/lib_http2
Và build lại curl
cd /usr/local/directadmin/custombuild chmod 700 custom/curl/configure.curl ./build curl
Chúc các bạn thành công.