使用 mod_expire 进行 Lighttpd 客户端优化,以控制/设置过期 HTTP 标头
您必须优化服务器端和客户端。客户端优化包括 CSS 代码、javascript 和图像,因为它们几乎不会改变。
您可以强制客户端网络浏览器在特定日期/小时不下载文件。
Lighttpd 带有mod_expire模块。它控制 HTTP/1.0 消息的响应标头中的 Expire 标头。对于需要积极缓存的静态文件(如图像、样式表、java 脚本、pdf 文件或类似文件)设置它很有用。
步骤 1:确保 mod_expire 处于活动状态
/etc/lighttpd/lighttpd.conf使用文本编辑器(如 vi)打开 lighttpd 配置文件:
# vi /etc/lighttpd/lighttpd.conf
您必须在所有其他模块之前加载 mod_expire,以避免出现不良副作用。
server.modules = ( "mod_expire", "mod_redirect", "mod_alias", "mod_rewrite", "mod_access", "mod_auth", "mod_status", "mod_fastcgi", "mod_compress", "mod_accesslog" )
步骤 # 2:设置 /js/ 和其他目录的过期时间
为指定路径下的所有文件分配一个过期时间:
## js - java script, css, figs directory in days ### expire.url = ( "/js/" => "access 1 days", "/css/" => "access 3 days", "/figs/" => "access 7 days" )
您还可以添加条件标签,如下所示:
$HTTP["url"] =~ "^/assets/figs/" { expire.url = ( "" => "access 12 hours" ) }
保存并关闭文件。使用以下命令重新启动lighttpd服务器:
# /etc/init.d/lighttpd restart
步骤#3:测试您的设置
使用如下 curl 命令测试 http 标头:
$ curl -I your-url-here
$ curl -I https://www.example.com/media/ejrdbpomwfboksxephhyflvdrjtvsorw.png