настройка lighttpd $ HTTP ["host"] - PullRequest
0 голосов
/ 18 февраля 2010

Я пытаюсь настроить мой сервер lighttpd для использования модуля fastcgi. Рецепт, которому я следую (вслепую), требует следующей строки в lighttpd.conf

$HTTP["host"] =~ "(^|\.)example\.com$" {

Я работаю на виртуальном частном сервере, и у меня нет доменного имени, только IP. Поэтому я предполагаю, что мне нужно заменить доменное имя своим IP - скажем, 100.101.102.103

Это не работает

$HTTP["host"] =~ "(^|\.)100\.101\.102\.103$" {

Также не существует нескольких вариантов.

Ответы [ 3 ]

1 голос
/ 17 марта 2010

Вы можете определить значение $ HTTP ["host"] для любого запроса, посмотрев в журнал доступа lighttpd (это вторая запись в стандартной строке журнала; она будет отображаться как "-", если запросне указывать один).

Если в журнале показано, что у вас есть фиксированный IP-адрес, это намного более чистый тест для него:

$HTTP["host"] == "100.101.102.103" {

(хотя регулярное выражение, которое вы использовалидолжно было сработать).

Однако, вероятно, здесь возникает путаница в том, что $ HTTP ["host"] установлен на значение заголовка "Host:" во входящем запросе, поэтому он полностью находится под контролемклиента (браузер, скрипт, что угодно), который делает запрос.Знание того, с какого URL вы тестируете, многое прояснит.

0 голосов
/ 19 февраля 2010

Я обнаружил, что это работает:

$SERVER["socket"] == "0.0.0.0:8000" {
0 голосов
/ 18 февраля 2010

Проверьте ваш IP-адрес, действительно ли нет DNS-имени для него?Как правило, они предоставляют субдомен как минимум.

Наконец, вы можете просто поставить "*", и он будет реагировать на все.

Вы используете fastcgi?это действительно имеет значение.

...