Mod rewrite 为什么这个lighttpd url重写不起作用?

Mod rewrite 为什么这个lighttpd url重写不起作用?,mod-rewrite,lighttpd,Mod Rewrite,Lighttpd,我有以下lighttpd的mod_重写代码,但它没有正确地向用户发出警告: $SERVER["socket"] == ":3041" { server.document-root = server_root + "/paste" url.rewrite-once = ( "^/([^/\.]+)/?$" => "?page=paste&id=$1") } 它应该将urldomain.com/H839jec转换为domain.com/index.php?page=paste&i

我有以下lighttpd的mod_重写代码,但它没有正确地向用户发出警告:

$SERVER["socket"] == ":3041" { 
server.document-root = server_root + "/paste" 
url.rewrite-once = ( "^/([^/\.]+)/?$" => "?page=paste&id=$1")
}
它应该将url
domain.com/H839jec
转换为
domain.com/index.php?page=paste&id=H839jec
,但是它没有这样做,而是将所有内容重定向到
domain.com
。我对mod_rewrite了解不多,希望您能提供一些关于为什么要这样做的信息。

请使用以下内容:

url.rewrite-once = ("^/(.*)$" => "/?page=paste&id=$1")
我不知道代码中的确切问题,但首先正则表达式看起来不必要的复杂,可能与您希望它匹配的不匹配,然后您将重定向到查询字符串,正如我所期望的,您仍然需要重定向到查询字符串之前的有效路径,这就是为什么我重定向到
/?页面…
,而不仅仅是
?页面…