我正在尝试配置 lighttpd 来为一个应用程序(我们称之为“foo”)提供服务,该应用程序使用非标准索引页(例如“ bar.html
”)作为其起始页,该起始页的文档根目录与其余页面不同。
以下是我所拥有的:
$HTTP["host"] =~ "^www.example.com$" {
server.document-root = "/usr/local/www/default"
url.rewrite-once = ( "^/foo/$" => "/baz/bar.html" )
alias.url += ( "/foo/" => "/usr/local/www/baz/" )
}
这个想法是在内部,当调用URL 时lighttpd
提供服务。/usr/local/www/baz/bar.html
http://example.com/foo/
但不知何故,这不起作用。我不能 100% 确定出了什么问题,但我注意到一件事是(有时?)我在 URL 中看到一个尾部斜杠(类似于http://example.com/foo/bar.html/
)。
它似乎在做一些事情(实际上与我想做的事情相差不远),但并不完全是我想要做的。
更新:来自https://redmine.lighttpd.net/projects/lighttpd/wiki/Docs_ModAlias我了解到左侧不应使用尾部斜线alias.url
(但右侧应该使用)。所以我尝试了
alias.url += ( "/foo" => "/usr/local/www/baz/" )
无济于事。
答案1
在与 URL 匹配之前,将 URL 更改为“/baz/bar.html”。尝试以下操作url.rewrite
:alias.url
$HTTP["host"] =~ "^www.example.com$" {
server.document-root = "/usr/local/www/default"
url.rewrite-once = ( "^/foo/$" => "/baz/bar.html" )
alias.url += ( "/baz/" => "/usr/local/www/baz/" )
}