为Web服务器配置svgz文件需要的http头,让浏览器可以打开svgz文件

IE8以及IE8以下的浏览器是不支持SVG的,svgz是svg文件的压缩格式,本文介绍的配置与浏览器无关,但浏览svgz文件请在IE9+或Firefox,Chrome等其他现代浏览器打开。

要让浏览器能正常显示svgz文件,需要3个条件:

1、浏览器支持SVG矢量图格式

2、服务器设置正确的响应mime-type,即HTTP响应头包含  Content-Type: image/svg+xml

3、服务器设置正确的响应内容编码类型,HTTP响应头包含  Content-Encoding: gzip

这只适用于通过http的形式从web服务器访问svgz文件,如果要从浏览器打开本地硬盘的svgz文件,貌似目前Chrome支持,IE/Firefox都不支持。

Apache httpd服务器上配置svgz

方法1:在.htaccess文件中添加配置。适用于仅针对单个站点进行设置。

在.htaccess文件中适当位置添加如下2行

AddType image/svg+xml svg svgz
AddEncoding gzip svgz

方法2:在httpd.conf文件中添加配置。适用于服务器全局,也可以对单个主机进行设置。

在httpd.conf 文件中添加如下几行

<IfModule mime_module>
    # svg support
    AddType image/svg+xml .svg .svgz
    AddEncoding x-gzip .svgz
</IfModule>

mime-type也可以在mime.types文件中进行配置,AddType AddEncoding也可以在其他.conf文件(比如vhosts.conf)中进行配置。

以上是通过mime_module模块进行配置,其实也可以通过headers_module模块来配置,示例:

<IfModule headers_module>
    <filesmatch "\.svgz$">
        header set Content-Type image/svg+xml
        header set Content-Encoding gzip
    </filesmatch>
</IfModule>

具体怎么配,配在哪儿,就看自己的需要来灵活处理了。

PHP程序动态响应svgz文件的例子

<?php
header('Content-Type:image/svg+xml');
header('Content-Encoding:gzip');
echo file_get_contents('test.svgz');
?>
时间: 2024-12-17 16:30:54

为Web服务器配置svgz文件需要的http头,让浏览器可以打开svgz文件的相关文章

报表XML导出rtf格式,结果在浏览器中打开XML文件。用360浏览器下载rtf文件打开后出现Authentication failed 问题

报表XML导出rtf格式,结果在浏览器中打开XML文件.用360浏览器下载rtf文件打开后出现Authentication failed 问题 直接上问题图: 问题描述:在Oracle EBS中执行"资源事务处理 XML"请求,选择输出rtf格式,完成后查看输出,却在浏览器中打开了XML文件.        提示:需要检查一下是否有对应的模板文件和模板定义有效时间.        解决方案:1. 查看日志. 从中可以看出出错原因,以及模板代码.2. 添加Oracle XML Publi

VS Code如何在浏览器中打开Html文件?

1.首先打开扩展 " 文件 → 首选项 → 按键映射扩展" 快捷键:[ Ctrl+K Ctrl+M ] 2.在出现的窗口输入"open in browser",安装 3.打开Html文件 Alt+B:在默认浏览器打开 Ale+Shift+B:在其他浏览器打开 OK~~~ 原文地址:https://www.cnblogs.com/dawnwill/p/9404588.html

怎样让 pdf 文件直接下载而非在浏览器里打开

问题:点击 <a href="18禁.pdf">下载</a> 的时候,Chrome 会自动调用内置的 pdf 阅读器打开,我只想让用户下载这个文件,有什么办法呢? 答案:<a href="18禁.pdf" download>下载</a>

Web 服务器配置和管理

第3 篇  网络服务管理篇 第16 章  Web 服务器配置和管理 Web 服务是目前Internet 上最常见的服务之一,要搭建一个Web 服务器,首先要选择 一套合适的Web 程序.在本章中将会以强大的Apache 为例,介绍相关的安装.配置.维 护和高级功能等方面的知识,演示如何在Linux 操作系统下构建基于Apache 的Web 服 务器. 16.1  Web 服务器简介 万维网又称为Web(World Wide Web,www),是在Internet 上以超文本为基础形成 的信息网.

如何打开hprof文件

最近学习深入java虚拟机的书,照着里面的例子跑了下. 下面是demo: /** * VM Args:-Xms20m -Xmx20m -XX:+HeapDumpOnOutOfMemoryError * @author zzm */ public class HeapOOM { static class OOMObject { } public static void main(String[] args) { List<OOMObject> list = new ArrayList<OO

System.Diagnostic.Process.Start vs System.Windows.Forms.Help.ShowHelp 打开CHM文件

CHM文件,Microsoft Compiled HTML Help,即"已编辑的帮助文件",包含一系列的HTML文件,index文件和其它的导航工具,经常作为产品的帮助文件[1]. 在.Net程序中,打开这种文件最简单的方式就是调用System.Windows.Forms.Help.ShowHelp()方法.根据MSDN,重载了四种调用方式[2].Control为父控件,string为Help文件的URL,HelpNavigator是一个枚举类型,可以采用Index或者Topic或者

Sublime Text - 在浏览器打开当前文件

有没有办法通过快捷键在指定的浏览器中打开当前文件? 有点怀念Dreamweaver的F12? 其实Sublime也可以实现这一效果,而且不需要安装任何插件. 进入Tools -> Build System -> New Build System... Sublime默认给出一段JSON: { "cmd": ["make"] } 将这段JSON改为: { "cmd": ["chrome", "$file&q

批处理自动打开Hosts文件

之前写了一个备份还原Hosts文件的批处理,之后有人反映每次打开Hosts文件的路径太复杂,桌面生成快捷方式容易被清理掉,所以又写了个批处理自动打开Hosts文件,保存为.bat格式或者编译成exe格式运行即可,代码如下: @echo off start  notepad.exe C:\Windows\System32\drivers\etc\hosts exit

lsof恢复进程打开的文件

工作原理:进程每打开文件都会生成一个文件句柄FD来标识一个文件,进程打开的文件如果没有被释放,可以通过文件句柄FD来恢复删除的文件 注意:适合恢复进程一直在打开一个文件,例如日志文件,如果配置文件进程启动的时候读取马上释放掉该文件的句柄通过这种方式是恢复不了的:同时如果打开的文件被删除掉,同时把服务重启了,服务被重启这个文件句柄也会被释放掉,通过lsof方式也是无法恢复的: 安装:yum install lsof -y 查看打开/var/log/messages文件的进程 这里打开/var/lo