小さな仮想プライベートサーバーでlighttpdをいじっています。サーバーを指す2つのドメイン。Ubuntu 8.10 で最新バージョンの lighttpd と mod_evhost を使用しています。
誰かがdomain.com またはwww.domain.comをリクエストした場合に/webroot/domain.com/www/から提供されるようなルールを設定しようとしています
同様に、誰かがsub.domain.comをリクエストすると、/webroot/domain.com/sub/ から提供されます。
人々がfake.domain.com ( /webroot/domain.com/fake/が存在しない場所) を要求した場合、/webroot/domain.com/www/ から提供されることを望みます。
3 番目の要件はそれほど重要ではありません。fake.domain.comを要求したとしても、 /webroot/server.com/www/ のサーバー ドキュメント ルートから提供される、存在しないサブドメインを要求する人々に対処できます。
以下に、lighttpd.conf ファイルの関連部分を含めました。
server.document-root = "/webroot/server.com/www/"
// regex to match sub.domain.com
$HTTP["host"] =~ "\b[a-zA-Z]\w*\.\b[a-zA-Z]\w*\.\b[a-zA-Z]\w*" {
evhost.path-pattern = "/webroot/%0/%3/"
}
// regex to match domain.com
$HTTP["host"] =~ "\b[a-zA-Z]\w*\.\b[a-zA-Z]\w*" {
evhost.path-pattern = "/webroot/%0/www/"
}
それで、どこが間違っているのですか?現在、 *. domain.comおよびdomain.comへのすべてのリクエストは、 /webroot/domain.com/www/から処理されています。
皆さんが提供できる助けをいただければ幸いです。関連するものを残している場合は教えてください!
乾杯、 ロブ