2010-02-18 84 views
0

我想配置我的lighttpd服務器以使用fastcgi模塊。在lighttpd.conf

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

我是一個虛擬專用服務器上運行,我下面的配方(盲目)呼籲以下行,我沒有域名,只是一個IP。所以,我認爲我必須更換域名與我的IP - 讓我們說100.101.102.103

這不起作用

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

同樣沒有幾個變化。

回答

0

我發現這工作:

$SERVER["socket"] == "0.0.0.0:8000" { 
0

查詢您的IP地址,是否真的有它的DNS名稱?他們至少提供了一個子域名。

最後,你可以放「*」,它會響應一切。

您使用的是fastcgi嗎?它真的有所作爲。

+0

$ HTTP [「host」] =〜「*」{ - 這給我一個解析器錯誤。 – ravenspoint 2010-02-18 16:15:21

+0

您是否嘗試過我提到的反向查找? – avirtuos 2010-02-19 14:23:29

+0

我剛剛檢查了我自己的配置爲fastcgi與PHP&python(應該這樣做昨天)。除非要重寫/重定向URL,否則不需要定義$ HTTP [「主機」]。如果你發佈你的配置,我可以告訴你要改變什麼。 – avirtuos 2010-02-19 14:27:19

1

您可以確定的$ HTTP值[「主機」]是由在尋找的lighttpd的訪問日誌任何給定的請求(它是在一個標準的第二個項目日誌行;如果請求沒有指定一行,它將顯示爲「 - 」)。

如果日誌顯示你有一個固定的IP地址,這是一種更清潔的測試吧:

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

(雖然你是使用正則表達式應該有工作)。

這裏可能引起混淆的是,$ HTTP [「host」]被設置爲傳入請求中「Host:」頭的值,因此它完全在客戶端的控制之下(瀏覽器,腳本,無論什麼),這是提出請求。知道你正在測試的URL是什麼,可以澄清很多事情。