Перенаправление всех http и https запросов с помощью lighttpd

Перенаправление всех http и https запросов с помощью lighttpd

У меня есть запасной Raspberry Pi, поэтому я решил проверить PirateBox.

У меня все работает, однако поведение по умолчанию — не перенаправлять https-запросы. Учитывая, что PirateBox никогда не будет подключен к Интернету, а подключающиеся люди, скорее всего, не будут знать адрес для запроса, я хотел бы перенаправить все запросы (http и https) на PirateBox Uri, piratebox.lan

Я хотел бы настроить его так, чтобы он был похож на портал авторизации, но мне не нужна аутентификация, и запросы всегда будут перенаправляться.

PirateBox использует Arch Linux с dnsmasq и lighttpd.
Мои текущие настройки:

/etc/dnsmasq.conf

address=/#/192.168.77.1

/opt/piratebox/conf/lighttpd/lighttpd.conf

$HTTP["host"] !~ "^piratebox\.lan.*$" {
        url.redirect = ( "^/(.*)$" => "http://piratebox.lan/redirect.html" )
}

$SERVER["socket"] == ":443" {
        $HTTP["host"] !~ "^piratebox\.lan.*$" {
                url.redirect = ( "^/(.*)$" => "http://piratebox.lan/redirect.html" )
        }
}

$SERVER["socket"] == ":80" {
        $HTTP["host"] !~ "^piratebox\.lan.*$" {
                url.redirect = ( "^/(.*)$" => "http://piratebox.lan/redirect.html")
        }
}

В то время как все http-запросы перенаправляются на страницу PirateBox, https-запросы не перенаправляются, и страница PirateBox не загружается, а просто истекает время ожидания.

Что я делаю не так или мне следует подойти к этому вопросу по-другому?

Обновлять
Я тоже пробовал

$HTTP["scheme"] == "https" {
        url.redirect = ( "^/(.*)$" => "http://piratebox.lan/redirect.html" )
}

и это тоже не работает

решение1

У меня нет большого опыта работы с lighttpdним, но из семантики файла конфигурации мне кажется, что если у вас есть соединение, входящее на порт 443, оно будет перенаправлено на порт 443независимо от того, указали вы его http://в URL или нет. Если я правильно понимаю, и вы хотите перенаправить на порт 80, вам нужно явно указать это в директиве:

url.redirect = ( "^/(.*)$" => "http://piratebox.lan:80/redirect.html" )

Связанный контент