1

我的 lighttpd.conf 文件目前...

server.port = 8000
...
$SERVER["socket"] == ":8080" {
    $HTTP["host"] =~ "([^:/]+)" {
        url.redirect = ( "^/(.*)" => "https://%1:8000/$1" )
    }
}

server.modules = (
   "mod_accesslog",
   "mod_fastcgi",
   "mod_rewrite",
   "mod_auth",
   "mod_redirect"
)
...

现在,我可以让所有流量都流向端口 8080 以重定向到端口 8000(所有内容都位于该端口)。我希望能够输入 IP 本身(在此处使用 IP)并将您重定向到 https 和端口 8000(例如101.102.103.104 => https://101.102.103.104:8000)。现在我可以得到101.102.103.104:8080 => https://101.102.103.104:8000. 我只想使用IP。


解决了。

默认端口是 80。所以使用以下命令:

$SERVER["socket"] == ":80" {
    $HTTP["host"] =~ "(.*)" {
        url.redirect = ( "^/(.*)" => "https://%1:8000/$1" )
    }
}

这会将端口 80 上的所有内容(10.10.10.10 默认为端口 80)重定向到使用 https 的端口 8000。

4

1 回答 1

0

那么,这个问题解决了吗?

通过指定101.102.103.104您的浏览器默认为 port 80。因此,如果 lighttpd 正在侦听 port 80,您可以使用您描述的相同技术进行捕获/重定向。

在配置文档中,它说守护程序将绑定到$SERVER["socket"] ==条件中指定的端口。例如

$SERVER["socket"] == ":80" {
    $HTTP["host"] =~ "([^:/]+)" {
        url.redirect = ( "^/(.*)" => "https://%1:8000/$1" )
    }
}

上面的配置应该保证 lighttpd 将绑定到 port80并且还会重定向到 port 8000

于 2013-08-29T00:52:55.467 回答