zoukankan      html  css  js  c++  java
  • apache模块mod_expires配置

    apache模块mod_expires配置

    前提:apache安装前支持DSO动态模块加载

    mod_expires 模块的主要作用是自动生成页面头部信息中的 Expires 标签和 Cache-Control 标签,从而降低客户端的访问频率和次数,达到减少不必要流量和增加访问速度的目的。

    mod_expires 是 apache 众多模块中配置比较简单的一个,它一共只有三条指令:
    "access plus 1 month"
    "access plus 4 weeks"
    "now plus 30 days"
    "modification plus 5 hours 3 minutes"
    A2592000
    M604800
    access、now及A 三种写法的意义相同,指过期时间从访问时开始计算。
    modification及M 的意义相同,指过期时间是以被访问文件的最后修改时间开始计算。
    所以,后一种写法只对静态文件起作用,而由脚本生成的动态页面不受它的作用。
    一般情况下,我们都使用access方式,下面是一个我使用的配置:

    安装mod_expires
    cd httpd-2.2.6/modules/metadata/
    /usr/local/apache/bin/apxs -c -i -a mod_expires.c

    <IfModule mod_expires.c>
       ExpiresActive On
       ExpiresDefault A600
       ExpiresByType image/x-icon A2592000
       ExpiresByType application/x-javascript A604800
       ExpiresByType text/css A604800
       ExpiresByType image/gif A2592000
       ExpiresByType image/png A2592000
       ExpiresByType image/jpeg A2592000
       ExpiresByType text/plain A86400
       ExpiresByType application/x-shockwave-flash A2592000
       ExpiresByType video/x-flv A2592000
       ExpiresByType application/pdf A2592000
       ExpiresByType text/html A600
    </IfModule>

    或者:

    <IfModule mod_expires.c>
    ExpiresActive On
    ExpiresDefault "access plus 12 hours"
    ExpiresByType text/html "access plus 3 days"
    ExpiresByType text/plain "access plus 3 days"
    ExpiresByType text/css  "access plus 7 days"
    ExpiresByType image/gif "access plus 30 days"
    ExpiresByType image/png "access plus 30 days"
    ExpiresByType image/jpeg "access plus 30 days"
    ExpiresByType image/x-icon "access plus 30 days"
    ExpiresByType video/x-flv  "access plus 30 days"
    ExpiresByType application/x-shockwave-flash "access plus 30 days"
    </IfModule>



    编译错误:
    Warning!  dlname not found in /usr/local/apache/modules/mod_expires.la.
    Assuming installing a .so rather than a libtool archive.
    chmod 755 /usr/local/apache/modules/mod_expires.so
    chmod: cannot access `/usr/local/apache/modules/mod_expires.so': No such file or directory
    apxs:Error: Command failed with rc=65536
    解决办法:
    gcc -shared -o /usr/local/apache/modules/mod_expires.so /root/lamp/httpd-2.2.14/modules/metadata/mod_expires.o
    /usr/local/apache/bin/apxs -i -a -c /root/lamp/httpd-2.2.14/modules/metadata/mod_expires.c


    具体细节参考apache手册
  • 相关阅读:
    [Go] 解决空接口 interface{} cannot use (type []string) as type []interface {}
    [Linux] 脚本中的set -e有什么作用
    [Go] 解决go test 时 testing: warning: no tests to run
    [Go] go for range循环map是无序的 变成有序
    [Linux] ubuntu 32位 i686 安装docker
    [Git] git checkout 恢复未add的修改文件
    [MySQL] in 子查询出现DEPENDENT SUBQUERY问题
    [MySQL] group by 聚合函数的原理和聚合限制原因SELECT list is not in GROUP BY clause and contains nonaggregated column
    [MySQL]mysql的ANY_VALUE()函数 解决 ONLY_FULL_GROUP_BY 模式
    [Go] GODEBUG=inittrace=1 查看所有执行的init函数
  • 原文地址:https://www.cnblogs.com/feihongwuhen/p/7171060.html
Copyright © 2011-2022 走看看