我正在尝试为服务器上特定路径上的文件设置 mimetypes,该服务器运行带有 SSL 的 lighttpd 版本 1.4.31。
我正在遵循该配置文档:http://redmine.lighttpd.net/projects/1/wiki/docs_configuration
直到 lighttpd 1.5.0 版本才具有指定功能$PHYSICAL["path"]
,因此我尝试指定$HTTP["url"]
。
我已经尝试过了
$HTTP["url"] == '/my_path/directory_to_affect/foo.html' {
# my settings are in here
}
和
$HTTP["url"] =~ '/my_path/directory_to_affect/*' {
# my settings are in here
}
如果我测试我的配置文件lighttpd -D -f lighttpd.conf
或尝试重新启动 lighttpd,我会收到此错误:
2015-04-29 14:37:52: (configfile.c.892) source: /etc/lighttpd/lighttpd.conf line: 48 pos: 12 invalid character in variable name
2015-04-29 14:37:52: (configfile.c.948) configfile parser failed at: ==
或者出现同样的错误,但显示=~
的不是==
。
令我困惑的是,已经存在其他条件配置,例如 where $SERVER["socket"] == ":80"
,并且这些配置工作正常。
答案1
根据lighttpd 配置文件语法文档,仅支持双引号"
,不'
支持。
您的观察虽然$SERVER["socket"] == ":80"
有效,但$HTTP["url"] == '/my_path/'
事实并非如此,证实了这一点。