2017-01-19 53 views
7

Używam GTMetrix, aby zobaczyć prędkość mojej strony i pokazuje mi to (sprawdź poniżej obrazu).Jak wykorzystać buforowanie przeglądarki w Railsach 4?

Jak mogę wykorzystać buforowanie przeglądarki, aby przyspieszyć prędkość ładowania witryny w Railsach 4?

odroczyć analizowania JS, ja już umieścić

<%= javascript_include_tag 'application' %> 

przed/tag html.

enter image description here

Odpowiedz

10

Polecam przy użyciu osobnego serwera WWW, jak nginx ustawić nagłówki pamięci podręcznej i plików .js .css, usuwanie kłopotów służyć statycznych plików z Rails.

Jeśli naprawdę chcesz iść z czystym Rails serwera (APP/WWW), rozwiązaniem jest umieszczenie tego kawałka kodu w config/environments/production.rb

SZYNY 5

config.public_file_server.headers = { 
    'Cache-Control' => "public, s-maxage=#{365.days.to_i}, maxage=#{180.days.to_i}", 
    'Expires' => "#{1.year.from_now.to_formatted_s(:rfc822)}" 
} 

szynach 4

config.static_cache_control = "public, s-maxage=#{365.days.to_i}, maxage=#{180.days.to_i}" 
+1

Czy to TYLKO rozwiązanie Rails 5? wygląda tak: http://stackoverflow.com/questions/34126366/rails-4-2-5-nable-to-upgrade-config-serve-static-files-to-config-public-fi, czy mamy coś podobnego dla R4? – iCyborg

+2

Zalecenie dla Rails 4 (i 5) to użycie CDN. Poza tym ustaw 'config.static_cache_control' na' config/environments/production.rb' – ErvalhouS

+0

@ErvalhouS Czy mógłbyś zamieścić swoją odpowiedź w CDN? –