HTTP/2 was launched mainly to improve the poor performance of HTTP 1.1. In order to improve HTTP performance, Google created SPDY, which was the predecessor of HTTP/2 and later developed into the HTTP/2 standard.
To enable the HTTP/2 protocol on the server, you need to install Nginx first. And make sure it functions properly and is configured without errors. You can use the following command to check:
sudo nginx -t
In addition, you need to have root access to the server, or at least a non-root system user with sudo permissions so that you can modify the Nginx configuration file. There will be no permission issues. Ultimately, you must have a domain name and a valid SSL certificate issued for that domain name.
In order to enable Nginx's HTTP/2 protocol on Ubuntu VPS, you need to edit the default Nginx service (server) block, we use With nano, you can use your own text editor.
sudo nano /etc/nginx/sites-available/default
Add the following service block:
server { server_name domain.com www.domain.com; listen 443 ssl http2 default_server; root /var/www/html; index index.html; location / { try_files $uri $uri/ =404; } ssl_certificate /etc/nginx/ssl/domain.com.crt; ssl_certificate_key /etc/nginx/ssl/domain.com.key; } server { listen 80; server_name domain.com www.domain.com; return 301 https://$server_name$request_uri; }
Make sure to replace domain.com with your real domain name. In addition to this, ensure that the document root and SSL certificate and key paths are configured correctly. When you have finished editing the service block, you need to save and close the file. Use the following command to check if there are any errors in the Nginx configuration:
sudo nginx -t
For the changes just to take effect, you need to restart Nginx:
sudo systemctl restart nginx.service
If you want to enable the HTTP/2 protocol for another domain name, you can check Our blog on how to set up Nginx service blocks on Ubuntu and CentOS.
In order to enable Nginx’s HTTP/2 protocol on CentOS VPS, you need to follow the exact same steps as on Ubuntu. The only difference is the location of the Nginx chunk files. In order to edit the default Nginx service block on CentOS, you need to go to the /etc/nginx/conf.d folder.
# nano /etc/nginx/conf.d/default.conf
Check the configuration again for errors, save and close the file, and then use the following command to restart the Nginx service:
# systemctl restart nginx.service
Use the online HTTP/2 detection tool to check the Nginx HTTP/2 protocol Whether it was successfully opened.
The above is the detailed content of How to enable Nginx HTTP/2 on Linux. For more information, please follow other related articles on the PHP Chinese website!