在CentOS上配置Nginx以支持HTTP/2,你需要确保你的Nginx版本至少是1.9.5。以下是配置步骤:
安装或升级Nginx: 如果你还没有安装Nginx,可以使用以下命令安装:
sudo yum install epel-release
sudo yum install nginx
如果你已经安装了Nginx,但版本较旧,请升级到最新版本:
sudo yum update nginx
启用HTTP/2: HTTP/2通常与SSL/TLS一起使用,因此你需要为你的站点获取一个SSL证书。你可以使用Let’s Encrypt免费获取一个。
安装Certbot和Nginx插件:
sudo yum install certbot python2-certbot-nginx
使用Certbot获取并安装SSL证书:
sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com
Certbot会自动更新你的Nginx配置文件以启用HTTPS,并且如果一切顺利,它会添加HTTP/2的支持。
手动配置Nginx:
如果你想手动配置Nginx以支持HTTP/2,可以编辑你的Nginx配置文件(通常位于/etc/nginx/nginx.conf或/etc/nginx/conf.d/yourdomain.conf)。
打开配置文件:
sudo vi /etc/nginx/nginx.conf
或者
sudo vi /etc/nginx/conf.d/yourdomain.conf
在server块中,确保你有以下配置:
server {
    listen 443 ssl http2;
    server_name yourdomain.com www.yourdomain.com;
    ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem;
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers HIGH:!aNULL:!MD5;
    # 其他配置...
}
确保listen指令包含了ssl和http2参数。
重启Nginx: 保存配置文件后,重启Nginx以应用更改:
sudo systemctl restart nginx
验证HTTP/2: 你可以使用浏览器的开发者工具或者在线工具如SSL Labs来验证你的站点是否已经成功启用了HTTP/2。
请注意,HTTP/2需要HTTPS,因此确保你的站点配置了SSL/TLS。如果你还没有配置SSL/TLS,请先完成这一步骤。