What is HTTP/3 and QUIC?

HTTP/3, formerly known as “HTTP over QUIC,” is the latest iteration of the Hypertext Transfer Protocol. It serves as the successor to HTTP/2.

Initially developed by Google, QUIC aimed to enhance HTTP/2 by securely transmitting it over UDP.

In 2016, the Internet Engineering Task Force (IETF) embarked on standardizing the protocol. During this standardization process, QUIC was divided into two components: the transport protocol (QUIC) and the application protocol (HTTP/3).

HTTP/3 and HTTP/2 differ primarily in their underlying protocols and header compression mechanisms.

HTTP/3 employs QUIC, constructed upon UDP, whereas HTTP/2 relies on TCP. Furthermore, HTTP/3 utilizes QPACK for header compression, whereas HTTP/2 employs HPACK for the same purpose.

How to Enable HTTP/3 and QUIC on RunCloud

RunCloud supports HTTP/3 and QUIC on OpenLiteSpeed servers. If you deploy the server after 17 July 2023, there is no configuration change needed – HTTP/3 and QUIC are automatically enabled as long as UDP port 443 is opened.

If you want to enable HTTP/3 and QUIC on a server that was deployed before 17 July 2023, you can follow these steps:

  1. Reset the LiteSpeed Config in your server. To do this, go to the “Settings” tab of your server and click on the “Reset Default” button in the LiteSpeed Server Config section.

Note: This will erase any customizations you have made to the LiteSpeed Config. Make sure you back up your config file before resetting it.

  1. Next, you need to rebuild the web application config of each web application that was deployed on this server.

    Go to the “Tools” menu in your web application and click on the “Rebuild Web Application Config” button.
  1. Open UDP Port 443 at the firewall. QUIC uses UDP instead of TCP, so you need to allow both TCP and UDP for port 443. On RunCloud, you can check this on the “Security” page in your server settings.

    If you have any firewall at the server provider level, you also need to open UDP Port 443 there.
  1. Finally, you need to enable SSL in your web application if you don’t have one already. You can use RunCloud’s free SSL or add your custom SSL certificate.
  1. After enabling HTTP/3, you can use a free tool such as https://http3check.net/ to check whether your server is configured correctly.