Podczas uruchamiania zasobów: prekompiluj zadanie rake, tworzone są skompresowane wersje zasobów aplikacji. Zgodnie z wytycznymi Rails dla potoku aktywów, możesz skonfigurować swój serwer WWW (w moim przypadku Apache 2.2), aby obsługiwał te prekompresowane pliki, zamiast mieć serwer WWW do wykonania pracy.Jak skonfigurować moduł mod_deflate do obsługi zasobów gzipped przygotowanych przy użyciu zasobów: prekompilacja
Czego nie mogę zrozumieć, to jak skonfigurować mod_deflate tak, aby te pliki były wyświetlane zamiast podwójnego kompresji, a następnie wyświetlane?
mam mod_deflate włączona poprzez httpd.conf:
AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
A ja konwertowane kod na szynach prowadzących, aby przejść do .htaccess w miejscach publicznych/aktywa:
# Some browsers still send conditional-GET requests if there's a
# Last-Modified header or an ETag header even if they haven't
# reached the expiry date sent in the Expires header.
Header unset Last-Modified
Header unset ETag
FileETag None
# RFC says only cache for 1 year
ExpiresActive On
ExpiresDefault "access plus 1 year"
# Serve gzipped versions instead of requiring Apache to do the work
RewriteEngine on
RewriteCond %{REQUEST_FILENAME}.gz -s
RewriteRule ^(.+) $1.gz [L]
# without it, Content-Type will be "application/x-gzip"
<FilesMatch .*\.css.gz>
ForceType text/css
</FilesMatch>
<FilesMatch .*\.js.gz>
ForceType text/javascript
</FilesMatch>
Any pomysły, jak to właściwie ustawić?
Mała uwaga - jeśli nie jest to w .htaccess, to musi być w sekcji Directory, -s inaczej nie zadziała. – lzap
Powinieneś także polecić użycie 'application/javascript' zamiast' text/javascript'. Zobacz [RFC4329] (https://tools.ietf.org/html/rfc4329) na * Typy mediów Scripting *. – tne
musiałem zrobić \t AddEncoding gzip .gz inaczej dobry –
Torsten