IBM HTTPSever开启压缩和过期

本文介绍如何通过配置HTTP服务器的httpd.conf文件来实现文件压缩及过期设置,以提升浏览器性能和缓存效率。

使用文本编辑器,打开 httpd.conf 文件。缺省情况下,此文件存储在以下目录中:

  • Linux:/opt/IBM/HTTPServer/conf
  • AIX:/usr/IBM/HTTPServer/conf

  • Microsoft Windows:C:\IBM\HTTPServer\conf

 

一、压缩设置

如果没有使用 IBM WebSphere Application Server Edge Components 或类似的设备压缩内容,那么请考虑配置 IBM HTTP Server 压缩特定类型的内容,以提高浏览器性能。

这是一项可选配置。如果正在网络其他位置上压缩内容,那么您不需要执行此过程。压缩时需要大量的 CPU;如果选择使用此选项,必须监视资源可用性。
处理特定的压缩内容(包括图像和 JavaScript)时,Microsoft Internet Explorer 6 的某些版本中存在问题。下面的伪指令未压缩图像,但是压缩了 JavaScript。如果在应用这些伪指令后发现 Microsoft Internet Explorer 6 存在问题,请注意您应该取消注释步骤 5 中伪指令的最后一行。

将伪指令添加到 httpd.conf 文件时,请务必按照在以上步骤中定义这些伪指令的相同顺序进行添加。

要指定压缩的文件类型,请完成下列步骤:

  1. 在配置文件中查找以下条目:
    LoadModule deflate_module modules/mod_deflate.so
    如果此条目不存在,请添加。
  2. 如果以下行已存在于 httpd.conf 文件中,请将其注释掉或除去。此行将造成所有使用的内容都被压缩,从而将导致 Microsoft Internet Explorer 6 出现问题:
    #setOutputFilter DEFLATE
  3. 添加以下语句以压缩 IBM Connections 所使用的多种内容类型:
    #Only the specified MIME types will be compressed.
    
    AddOutputFilterByType DEFLATE text/html
    AddOutputFilterByType DEFLATE application/xhtml+xml
    AddOutputFilterByType DEFLATE text/plain text/xml
    AddOutputFilterByType DEFLATE application/x-javascript
    AddOutputFilterByType DEFLATE text/css text/javascript
    AddOutputFilterByType DEFLATE application/xml
    AddOutputFilterByType DEFLATE application/atom+xml
    AddOutputFilterByType DEFLATE text/javascript 
  4. 添加以下语句以压缩从“活动”下载的二进制内容,从而使用变通方法解决带有某些二进制内容的 Microsoft Internet Explorer 6 问题:
    <Location /activities >   AddOutputFilterByType DEFLATE application/octet-stream</Location>
  5. 添加以下语句以特别表明针对较旧版本的浏览器应仅压缩文本/html 内容。如果您的环境中包含 Microsoft Internet Explorer 6 SP1 支持或者遇到 Web 浏览器挂起问题或与 SP1 之后的 Microsoft Internet Explorer 6 发行版相关的其他问题,请取消注释最后一行。
    #Ensure that only text/html content is compressed for older browsers
    BrowserMatch ^Mozilla/4 gzip-only-text/html
    BrowserMatch ^Mozilla/4\.0[678] no-gzip
    BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
    # Uncomment the following line if you encounter freezing issues with Internet Explorer 6
    #BrowserMatch \bMSIE\s6.0 gzip-only-text/html 
  6. 添加以下语句以特别表明不能压缩图像文件和二进制文件,从而防止 Web 浏览器挂起:
    # Ensures that images and executable binaries are not compressed
    SetEnvIfNoCase Request_URI \\.(?:gif|jpe?g|png|exe)$ no-gzip dont-vary
  7. 添加以下语句以确保代理服务器不会修改以上语句所需的用户代理标题:
    # Make sure proxies do not deliver the wrong content
    Header append Vary User-Agent env=!dont-vary
    如果已注释掉以下行,请除去对其的评论:
    LoadModule headers_module modules/mod_headers.so

 

二、过期设置

#加载expires模块

LoadModule headers_module modules/mod_headers.so

#Load 修改header的模块。

LoadModule expires_module modules/mod_expires.so

#Load 设定过期header的模块。

Header append Via: CCN-BJ-4-502

#增加一个Via header,值配置成设备的hostname

KeepAliveTimeout 60

#设置连接的保持时间为60秒。

ExpiresActive On

#启用过期header功能。

ExpiresDefault A604800

#缺省过期时间为访问后的604800

 

#取消Etag,去掉Etag带来的干扰    

FileETag none   

 

<Directory /data/download/pplive/list.pplive.com/>

     Options FollowSymLinks

AllowOverride None

Order allow,deny

Allow from all

 

ExpiresByType text/html A300

#text/html类型文件的过期设置为访问后的300

ExpiresByType text/css A259200

#text/css类型文件的过期设置为访问后的259200

ExpiresByType application/x-javascript A300

# application/x-javascript类型文件的过期设置为访问后的300

ExpiresByType image/gif A2592000

#image/gif类型文件的过期设置为访问后的2592000

ExpiresByType application/x-shockwave-flash A2592000

# application/x-shockwave-flash类型文件的过期设置为访问后的2592000

</Directory>

 

      上述配置文件中load的两个模块:mod_headers.so  mod_expires.so 可以让Apache具有对header的一些定制功能。

       ExpiresByType     表示按照文件类型-MIME-TYPE设定过期策略;

      A300表示在Access300秒后过期;

      ExpiresByType text/css A2592000    表示Mime typetext/css的文件,在Access2592000秒过期。

      ExpiresDefault A604800  表示除了单独制定的文件类型等过期策略外的其他内容,按照这个缺省的策略设定:访问后604800秒过期。

 过期例子:

#加载expires模块    

LoadModule expires_module modules/mod_expires.so   

#取消Etag,去掉Etag带来的干扰    

FileETag none   

ExpiresActive On   

ExpiresDefault "access plus 10 years"   

ExpiresByType image/gif "access plus 10 years"   

ExpiresByType image/jpeg "access plus 10 years"   

ExpiresByType image/png "access plus 10 years"   

ExpiresByType text/css "access plus 10 years"   

ExpiresByType text/html "access plus 1 seconds"   

ExpiresByType text/javascript "access plus 10 years"   

ExpiresByType application/x-unknown-content-type "access plus 10 years"   

ExpiresByType application/x-javascript "access plus 10 years"   

 

 设置完成之后,保存并关闭配置文件。重新启动 IBM HTTP Server。

设置过期也压缩之后,我进行了测试,None为没有进行压缩,pack是进行了合并(包括图片,脚本,和样式合并),Gzip则是开启了压缩,他们之间测试对比如下:

 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值