Zamieściłem podobne pytanie tutajJak włączyć kompresję w Ruby on Rails?
Serving Compressed Assets in Heroku with Rack-Zippy
ale postanowił zrezygnować z tej usługi, ponieważ nie mogłem dostać się do pracy.
Uruchomiłem PageSpeed Insights na mojej stronie internetowej, aby określić szybkość mojej witryny.
Najważniejszą propozycją, jaką otrzymałem, było Włączenie kompresji.
Compressing resources with gzip or deflate can reduce the number of bytes sent over the network.
Enable compression for the following resources to reduce their transfer size by 191.2KiB
(74% reduction).
Mam postępujesz zgodnie z instrukcjami na tej stronie
https://developers.google.com/speed/docs/insights/EnableCompression
i mówi, aby skonsultować się z dokumentacją serwera WWW, w jaki sposób włączyć kompresję:
Użyłem na tej stronie, aby dowiedzieć się, mój serwer WWW
http://browserspy.dk/webserver.php
Okazuje się, że mój serwer internetowy to WEBrick.
PageSpeed Insights Strona tylko wymienia następujące 3 serwery
Apache: Use mod_deflate
Nginx: Use ngx_http_gzip_module
IIS: Configure HTTP Compression
Rozglądałem do dokumentacji kompresji gzip dla serwerów WEBrick ale nie mogłem znaleźć nic.
Szukałem, jak włączyć kompresję w Railsach i nie mogłem niczego znaleźć. Dlatego proszę tutaj.
Próbowałem używać Rack Zippy, ale zrezygnowałem z niego.
W tej chwili nie wiem nawet, od czego zacząć. Moim pierwszym krokiem jest dowiedzieć się, co powinienem zrobić.
Edit
Poszedłem za sugestię Ahmeda korzystania Rack :: deflator
I potwierdził, że miałem go uruchamiając
rake middleware
=> use Rack::Deflator
a następnie
git add .
git commit -m '-'
git push heroku master
niestety PageSpeed wciąż mówi, że to konieczne s do kompresji. Potwierdziłem to, przechodząc do Developer Tools < < Ustawienia sieciowe i odświeżając stronę. Rozmiar i zawartość były praktycznie identyczne dla każdego zasobu, co oznacza, że pliki nie są skompresowane.
Czy coś jest nie tak z jednym z moich plików?
Dziękuję za pomoc.
Oto moja pełna konfiguracja/aplikacja.Plik rb:
require File.expand_path('../boot', __FILE__)
require 'rails/all'
Bundler.require(*Rails.groups)
module AppName
class Application < Rails::Application
config.middleware.use Rack::Deflater
config.assets.precompile += %w(*.png *.jpg *.jpeg *.gif)
config.exceptions_app = self.routes
config.cache_store = :memory_store
end
end
Jeśli wystąpi problem, źródło prawdopodobnie tam jest, prawda?
Czy muszę zainstalować klej Deflator?
Po ponownym uruchomieniem Page Speed, nadal pojawia się ten sam komunikat, że muszę włączyć kompresję. Ponadto, używając PageSpeed i Network, mój rozmiar i treść są nadal praktycznie identyczne. Doceniam jednak odpowiedź i za to dostaję mój głos. Dziękuję za poświęcony czas – Darkmouse
Istnieje klejnot, który możesz wypróbować: https://github.com/romanbsd/heroku-deflater – Ahmed
Już miałem powiedzieć, że zatrzymanie klejnotu heroku-deflater rozwiązało mój problem. Proszę zignorować mój poprzedni post. Dzięki za pomoc. – Darkmouse