gpt4 book ai didi

laravel-5 - 如何在 Laravel 项目中设置杠杆浏览缓存和 Gzip 压缩

转载 作者:行者123 更新时间:2023-12-03 15:57:23 24 4
gpt4 key购买 nike

我正在尝试启用 Laravel 中的 Gzip 压缩和利用浏览器缓存 用于网站优化。
我不知道如何在 Laravel 中启用它们。

任何帮助/建议将不胜感激。

提前致谢。

最佳答案

启用 gzip:

根据您是否拥有 IIS 或 Apache 服务器(或其他任何东西),有多种设置 gzip 压缩的方法。

对于 Apache :
您需要将以下行添加到您的 .htaccess 文件中:

<IfModule mod_deflate.c>
# Compress HTML, CSS, JavaScript, Text, XML and fonts
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/vnd.ms-fontobject
AddOutputFilterByType DEFLATE application/x-font
AddOutputFilterByType DEFLATE application/x-font-opentype
AddOutputFilterByType DEFLATE application/x-font-otf
AddOutputFilterByType DEFLATE application/x-font-truetype
AddOutputFilterByType DEFLATE application/x-font-ttf
AddOutputFilterByType DEFLATE application/x-javascript
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE font/opentype
AddOutputFilterByType DEFLATE font/otf
AddOutputFilterByType DEFLATE font/ttf
AddOutputFilterByType DEFLATE image/svg+xml
AddOutputFilterByType DEFLATE image/x-icon
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/javascript
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/xml

# Remove browser bugs (only needed for really old browsers)
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
Header append Vary User-Agent
</IfModule>

保存 .htaccess 文件后,再次在 Google Page Speed Insights 中测试您的站点或 Gtmetrix以确保它已被正确压缩。

启用杠杆浏览器缓存:

再次将以下代码添加到您的 .htaccess 文件中。
<IfModule mod_expires.c>
ExpiresActive On

# Images
ExpiresByType image/jpeg "access plus 1 year"
ExpiresByType image/gif "access plus 1 year"
ExpiresByType image/png "access plus 1 year"
ExpiresByType image/webp "access plus 1 year"
ExpiresByType image/svg+xml "access plus 1 year"
ExpiresByType image/x-icon "access plus 1 year"

# Video
ExpiresByType video/mp4 "access plus 1 year"
ExpiresByType video/mpeg "access plus 1 year"

# CSS, JavaScript
ExpiresByType text/css "access plus 1 month"
ExpiresByType text/javascript "access plus 1 month"
ExpiresByType application/javascript "access plus 1 month"

# Others
ExpiresByType application/pdf "access plus 1 month"
ExpiresByType application/x-shockwave-flash "access plus 1 month"
</IfModule>

小心
在启用浏览器缓存时要小心,因为如果您在某些文件上设置参数太长,用户可能无法在更新后获得您网站的最新版本。

如果您正在与设计师合作对您的网站进行更改,这一点尤其重要——他们可能已经进行了更改,但您还看不到它们,因为已更改的元素已缓存在您的浏览器中。

关于laravel-5 - 如何在 Laravel 项目中设置杠杆浏览缓存和 Gzip 压缩,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50813474/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com