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

原创 2014年11月03日 09:59:18

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');
?>

相关文章推荐

用 Web 服务器创建 MIME 类型

在下面的章节中, 你将会学到如何用 Apache, Tomcat 和微软的 IIS 创建 MIME 类型. 用 Apache 创建 MIME 类型 在 Apache 里, MIME 类型和文件...

dom4j详解之读取XML文件

dom4j是一个Java的XML API,类似于jdom,用来读写XML文件的。dom4j是一个非常非常优秀的Java XML API,具有性能优异、功能强大和极端易用使用的特点,同时它也是一个开放源...

java Gzip方式 解压,压缩文件Utils

废话不多说,直接上代码,就是这么简单粗暴 import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; imp...

基于HTTP、NIO、单线程实现浏览器并发非阻塞访问服务器文件

单线程实现并发无阻塞NIO服务器 访问1,浏览:http://localhost:8989/files/1.txt 访问2,下载:http://localhost:8989/files/2.zip ...

Java Web实现使用浏览器从服务器下载文件(后台)

Java Web实现 使用浏览器从服务器下载文件。 下面实现两种情况的下载,需求如下:需求(一):1、用户在页面填写表单。 2、填写完成后,选择下载,将表单内容发往后台。 3、后台根据内容生产一...

Java客户端通过Http发送POST请求上传文件到web服务器

通过HttpURLConnection类实现http协议上传信息 import java.io.BufferedInputStream; import java.io.BufferedWriter;...

HTTP服务器Nginx.conf配置文件介绍与调试

Nginx配置文件主要分成四部分:main(全局设置)、server(主机设置)、upstream(负载均衡服务器设置)和 location(URL匹配特定位置的设置)  Nginx...
  • cuoban
  • cuoban
  • 2015年03月31日 14:49
  • 1020
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:为Web服务器配置svgz文件需要的http头,让浏览器可以打开svgz文件
举报原因:
原因补充:

(最多只允许输入30个字)