2012-02-24 17 views
1

Lighttpdが内部クライアント用に別のページを表示し、他のすべてのユーザー用にデフォルトページを表示するようにします。内部LANクライアント用に異なるLighttpd仮想ホストを設定します。

thesetwoのリンクの間に、私は何をしたいのか考えていますが、RegExを確認するには、[http://] 192.168.0のホスト名を使用してクライアントを制限する必要がありますか?または[http://] 192.168。?。?別のページに私はのlighttpd.confに次のコードを使用してきた:

192\.168\.0\.\d{1,3}(\s|$))+ 
192\.168\. 
[192.168.[0-9]+.] 
192\.168\.[0-9]+.[0-9]+$ 

...と様々な:「RegExHere」の私のような種々の試みを試してみました

server.document-root  = "/var/www/sites" 

$HTTP["host"] == "RegExHere" { 
     server.document-root = "/var/www/setup" 
} 

を...それらの組み合わせ。私は近くにいるのかどうかはわかりませんが、関係なく、それは私にデフォルトページを示しています。

誰かが私が間違っているかもしれないとアドバイスできますか?

ありがとうございます!

答えて

1

正規表現と一致させるには、=〜構文を使用する必要があります。 $HTTP["host"] == "RegExHere"$HTTP["host"] =~ "RegExHere"に変更し、それらの正規表現の1つが動作するはずです。 ^192\.168\.\d{1,3}\.\d{1,3}$それを行う必要があります。それhttp://blog.evanweaver.com/2006/06/07/regular-expressions-in-lighttpd-host-redirects/

編集でこの記事を見つけた

:私はあなたの代わりに$ HTTPの[「remoteip」] [「ホスト」] $ HTTPを使用する必要があると思うし、あなたが正規表現せずにそれを行うことができますように見えます。 Hershaはあなたに感謝素晴らしいです

$HTTP["remoteip"] == "10.0.0.0/8" { url.access-deny = ("") } 

$HTTP["remoteip"] == "127.0.0.0/8" { url.access-deny = ("") } 

http://forum.lighttpd.net/topic/27

+0

。 とても分かりやすいように思えます。 – drewstiff

+0

@drewstiffねえ、私は私の答えを更新しました。私は間違った$ HTTP変数も使用していると思います。 – Hersha

+0

これは問題なく動作しますが、実際のドメイン名を使用して外部サイトにアクセスしたい場合は、サーバーの内部IPによってアクセスされたときに専門ページを表示したかったのです。 ヘッドアップのおかげで、私は将来の参考のためにそれを書き留めます! – drewstiff

関連する問題