HostSEO Blog

Stories and News from IT Industry, Reviews & Tips | Technology Blog


How to enable ALPN with http2 for nginx on Centos 7 cPnginx Server

What Is ALPN?

ALPN, or Application-Layer Protocol Negotiation, is a TLS extension that includes the protocol negotiation within the exchange of hello messages. ALPN is able to negotiate which protocol should be handled over a secure connection in a way that is more efficient and avoids additional round trips. The ever-growing in popularity HTTP/2 protocol, makes use of ALPN to further decrease website load times and encrypt connections faster.

Why it is not supported in Centos 7?

The centos 7 is not using the latest openssl package . This the reason behind failing ALPN support with nginx in Centos 7.

Do I need ALPN with HTTP2 ?

The ALPN enabled nginx is more faster than normal http2. So it is better to enable ALPN in your server .

Steps To Enable ALPN with nginx on Centos 7

Please make sure that you are running the latest version of cpnginx software . You need to download the latest openssl packages from https://www.openssl.org/ as follows

cd /usr/local/src/
wget https://www.openssl.org/source/openssl-1.0.2j.tar.gz
tar -xzf openssl-1.0.2j.tar.gz 
mkdir -pv /opt/cpnginx/openssl
cp -vrf openssl-1.0.2j/* /opt/cpnginx/openssl/

Now make a custom nginx build configure as follows,

cp -vf /etc/cpnginx/build/configure.sh /etc/cpnginx/build/custom/	

Now edit the file /etc/cpnginx/build/custom/configure.sh and add the options –with-openssl=/opt/cpnginx/openssl

#!/bin/bash
./configure --prefix=/usr/local/nginx \
        --with-http_ssl_module \
        --with-http_ssl_module \
        --with-http_v2_module \
        --with-http_realip_module \
        --with-http_flv_module \
        --with-http_mp4_module \
        --with-ipv6 \
        --with-openssl=/opt/cpnginx/openssl \
        --with-http_stub_status_module 

Now build the nginx software

# nginxctl build nginx --version 1.10.2

Thats it . You have now cpnginx with full ALPN support with http2.

How to test it ?

You can check it from https://tools.keycdn.com/http2-test

Test to see if you browser is getting http2 support . You need to open your https websites on Chrome browser and do an inspect by right clicking your mouse. Now you see as “h2” in protocol section . Please see a sample screen short below,

Subscribe Now

10,000 successful online businessmen like to have our content directly delivered to their inbox. Subscribe to our newsletter!

Archive Calendar

SatSunMonTueWedThuFri
 12345
6789101112
13141516171819
20212223242526
27282930 

Born in 2004 ... Trusted By Clients n' Experts

SEO Stars

They never made me feel silly for asking questions. Help me understand how to attract more people and improve my search engine ranking.

Read More

Emily Schneller Manager at Sabre Inc
SEO Stars

Took advantage of Hostseo's superb tech support and I must say, it is a very perfect one. It is very fast, servers reliability is incredible.

Read More

Leena Mäkinen Creative producer
SEO Stars

We're operating a worldwide network of servers with high quality standards requirements, we’ve choose hostseo to be our perfect partner.

Read More

Ziff Davis CEO at Mashable
SEO Stars

It’s very comfortable to know I can rely about all technical issues on Hostseo and mostly that my website and emails are safe and secured here.

Read More

Isaac H. Entrepreneur
SEO Stars

With hostseo as a hosting partner we are more flexible and save money due to the better packages with great pricing, free SEO n' free SSL too!

Read More

Madeline E. Internet Professional