.htaccess - 在.htaccess文件中启用SVG文件的压缩和缓存

标签 .htaccess caching svg compression

当我使用Google PageSpeed Insight分析网站时,应该解决一些有关SVG文件压缩的​​问题。

我一直在网上寻找解决这个问题的方法,但是无论我做什么似乎都行不通,因此我现在要问你们。

我已经检查了是否通过Web上的多个工具启用了gzip,这似乎是真的。

到目前为止,我已经在我的.htaccess文件中找到了它。

RewriteEngine On
Options FollowSymLinks

RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /#/$1 [L]

AddType     image/svg+xml              svg svgz
AddEncoding gzip                       svgz

## EXPIRES CACHING ##
<IfModule mod_expires.c>
ExpiresActive On
ExpiresByType image/jpg "access 1 month"
ExpiresByType image/jpeg "access 1 month"
ExpiresByType image/gif "access 1 month"
ExpiresByType image/png "access 1 month"
ExpiresByType text/css "access 1 week"
ExpiresByType text/html "access 1 day"
ExpiresByType application/pdf "access 1 month"
ExpiresByType text/x-javascript "access 1 month"
ExpiresByType image/x-icon "access 1 month"
ExpiresByType image/svg "access 1 month"
ExpiresDefault "access 1 month"
</IfModule>
## EXPIRES CACHING ##

## FILE COMPRESSION ##
<ifModule mod_gzip.c>
mod_gzip_on Yes
mod_gzip_dechunk Yes
mod_gzip_item_include file .(html?|txt|css|js|svg|php|pl)$
mod_gzip_item_include handler ^cgi-script$
mod_gzip_item_include mime ^text/.*
mod_gzip_item_include mime ^application/x-javascript.*
mod_gzip_item_include mime ^image/svg+xml.*
mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*
</ifModule>
## FILE COMPRESSION ##

# mod_deflate configuration
<IfModule mod_deflate.c>
# Restrict compression to these MIME types
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xml+rss
AddOutputFilterByType DEFLATE application/x-javascript
AddOutputFilterByType DEFLATE text/javascript
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE image/svg
AddOutputFilterByType DEFLATE image/svg+xml
<IfModule mod_headers.c>
    # Make sure proxies don't deliver the wrong content
    Header append Vary User-Agent env=!dont-vary
</IfModule>

我已经很努力地尝试了几个小时,所以我真的希望有人能提出解决方案。

浏览器缓存对于SVG也不起作用。也许有类似的问题?

最佳答案

回应很晚,但今天我自己也寻求同样的答案。

标题行正确的到期时间是:

ExpiresByType image/svg+xml "access 1 month"

同样,image/svg + xml可以用于gzip声明。

关于.htaccess - 在.htaccess文件中启用SVG文件的压缩和缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39204114/

相关文章:

html - 如何在 robots.txt 中只允许一个代理?

sql-server - Memcached 与 SQL Server 缓存

google-chrome - Azure 流量管理器浏览器缓存问题

javascript - 浮线干扰鼠标移动功能

php - 在 Wordpress 中实现简单的动态路由

php - Codeigniter - 设置 SSL 并收到 404 错误

.htaccess mod_rewrite 不会跳过 [S] 的 RewriteRule

android - 使用 Picasso 和 OkHttp 更新/更改缓存位图

html - 当 SVG 嵌入 HTML5 时,可以在 foreignObject 元素中呈现什么?

javascript - 将图像添加到 svg