我希望我的 lighttpd 服务器上有一个目录,将所有请求重定向到主index.php
文件,但使用 PHP 能够解释原始请求 URI。
例如,和都www.server.com/directory/foo
可以www.server.com/directory/bar
运行www.server.com/directory/index.php
,但 PHP 上下文将能够看到域(类似于$_SERVER['uri']
?)并使用内部 PHP 路由器来确定要做什么。
目前我已尝试了几种变化:
$HTTP["url"] =~ "^/directory/.*" {
url.redirect = (
"^/.*/assets/(.*)" => "/dir/assets/$1",
"^/.*/(.*)" => "/dir/index.php"
)
}
但index.php
无法看到原始路线。不过资产功能可以正常工作。谢谢!
答案1
解决了,以防其他人需要:
$HTTP["url"] =~ "^/directory/.*" {
url.rewrite-once = (
"^/.*/assets/(.*)" => "/directory/assets/$1",
"^/[^\?]*(\?.*)?" => "/directory/index.php$1"
)
}
也转发任何查询参数。