Заставить Lighttpd возвратиться 404 для неиспользованных субдоменов?

У меня есть некоторые домены, настроенные на моем сервере Ubuntu, который использует Lighttpd. У меня есть подстановочные домены, и я хочу, чтобы неиспользованные субдомены возвратились 404 вместо 200 и отображение регулярного домена. На эту проблему обратили мое внимание, потому что некоторые менее опытные поисковые системы (Bing, Baidu, mail.ru) индексируют мой сайт со странными субдоменами.

Я нашел свой тот же вопрос попросившим Apache здесь: Подстановочный знак DNS, VirtualHosts на apache2, 404 для неиспользованных субдоменов

Однако я ничего не нашел для Lighttpd.

Я хочу www.example.com/* кому: 301 перенаправление к example.com/* (уже установка)

Я хочу allUnsetSubdomains.example.com/* возвратиться 404 так, чтобы поисковые системы и люди поняли, что это не существует.

Вот соответствующие данные из моего vhost.conf файл:

$HTTP["host"] =~ "^www\.(.*)$" {
  url.redirect = ( "^/(.*)" => "http://%1/$1" )
}

# lots of other domains #

$HTTP["host"] =~ "example.com$" {
server.document-root = "/var/www/example.com"
server.errorlog = "/var/log/lighttpd/example.com-error.log"
accesslog.filename = "/var/log/lighttpd/example.com-access.log"
server.error-handler-404 = "/index.php"
}

# lots more domains #

Идеально я хотел бы смочь иметь универсальное правило, что все неиспользованные субдомены для всех доменов на сервере возвращаются 404, во многом как www перенаправляют тот. Я честно не понимаю файлы конфигурации Lighttpd или regex очень хорошо.

3
задан 13 April 2017 в 15:14
1 ответ

Вы можете использовать небольшой "трюк", как показано на devsite.pl .

} else $HTTP["host"] =~ "^something.domain.com$" {
    # ....
} else $HTTP["host"] =~ ".*" {
    url.redirect-code=404
    url.redirect = ( ".*" => "http://domain.com" )
}
2
ответ дан 3 December 2019 в 07:00

Теги

Похожие вопросы