Note: This topic is about HTTP/2. There is a newer protocol version, HTTP/3, which has significant advantages. Learn more about HTTP/3 and how to enable it in Plesk.

HTTP/2 is the second major version of the Hypertext Transfer Protocol (HTTP) used to exchange information on the World Wide Web. Introduced in 2015, HTTP/2 was created to address the HTTP/1 performance problems. HTTP/2 is currently supported by most major web browsers.

HTTP/2 is enabled in Plesk by default. Unlike HTTP/3, there is no need to enable HTTP/2 manually.

Troubleshooting

You can check if HTTP/2 is enabled on your website using an online service of your choice (for example, this one). If the check shows that only HTTP/1.1 is enabled, follow the steps below to troubleshoot this issue.

  1. Make sure SSL/TLS support is enabled for the website. To do so, go to Websites & Domains > the domain card > the “Hosting & DNS” tab > Hosting and then scroll down to the “SSL/TLS” support section.

    image ssl support

    Note: HTTP/2 is supported for websites with enabled SSL/TLS. Non-SSL websites continue to use HTTP/1.1. This is a restriction of both nginx and web browsers.

  2. Check that nginx is enabled:

    plesk sbin nginxmng -s
    

    If it is not, run the following command to enable it:

    plesk sbin nginxmng -e
    
  3. Check that there is no custom configuration template in /usr/local/psa/admin/conf/templates/custom/domain/nginxDomainVirtualHost.php. If there is one, remove it and recreate the configuration files:

    plesk sbin httpdmng --reconfigure-all
    
  4. Make sure that your Plesk does not use outdated SSL ciphers and protocols. To see the installed SSL ciphers and protocols, run the following command:

    plesk sbin sslmng --show-config
    

    If necessary, install up-to-date SSL ciphers and protocols with this command in the following pattern:

    plesk bin server_pref -u -ssl-ciphers <cipher>
    
  5. If none of the steps above helped, contact Plesk support.