如何更新Ruby on Rails网站,从http 1到http 2

问题描述 投票:1回答:2

目前使用Rails 5.2和Ruby 2.3与服务器:Nginx与乘客

请告知将网站从HTTP版本1更新为HTTP 2所需的更改。

虚拟主机:

 server {
    listen 80;
    listen [::]:80 ipv6only=on;

server_name ec2-34-xxx-xx-xx.us-west-2.compute.amazonaws.com;

# Tell Nginx and Passenger where your app's 'public' directory is
root /home/ec2-xxxx/apps/xxxxxxxxxx/public;

# Turn on Passenger
rails_env    production;
passenger_enabled on;
passenger_ruby /home/ec2-xxx/.rvm/gems/[email protected]/wrappers/ruby;

    # redirect server error pages to the static page /50x.html
    error_page   500 502 503 504  /50x.html;

    location = /50x.html {
        root   html;
    }
location ~ /.well-known {
            allow all;
    }

}

提前致谢

http nginx passenger http2 ruby-on-rails-5.2
2个回答
0
投票

您需要将Web服务器配置为使用HTTP / 2,例如,tomcat / apache,并且客户端应用程序需要使用使用HTTP / 2的正确httpclient / adapter。


0
投票

您可以在Nginx配置中启用HTTP / 2,假设您使用的是相对较新版本的Nginx。

然而所有browsers only support HTTP/2 over HTTPS。由于您只是在端口80上侦听,我认为您只是为HTTP设置,因此您需要做的第一件事就是在您的网站上设置HTTPS。

在那之后,你只需要下面的配置(再次假设在最新版本的Nginx上),使用端口443上的协议http2进行监听:

listen 443 ssl http2; 
listen [::]:443 ssl http2 ipv6only=on;
© www.soinside.com 2019 - 2024. All rights reserved.