Page 1 of 1

lighttpd Subdomain Konfiguration

Posted: 2010-10-03 10:16
by native
Ich versuche, auf einem Server Suport für eine Domain und eine Subdomain einzurichten. Aktuell sieht es so aus: rufe ich die Subdomain auf, wird auf die Root Domain umgeleitet. Hier meine Konfig:

Code: Select all

$HTTP["host"] =~ "(^|\.)example\.com$" {
    server.document-root = "/var/www/example.com/https/"
    accesslog.filename = "/var/www/example.com/logs/serverAccess.log"
}

### sugar crm :: client relation management
$HTTP["host"] =~ "(^|\.)crm\.example\.com$" {
    server.document-root = "/var/www/sugar"

    auth.backend = "plain"
    auth.backend.plain.userfile  = "/etc/lighttpd/pwd/.passwd"

    auth.require = ( "/docs/" =>
        (
        "method" => "basic",
        "realm" => "Authorized personnel only",
        "require" => "user=meinUser"
        )
    )
}
Wobei die Subdomain eben noch einen Verzeichnisschutz bekommen soll. Kann mir jdm sagen, wo der Fehler liegt?

Re: lighttpd Subdomain Konfiguration

Posted: 2010-10-03 11:23
by daemotron
"(^|\.)example\.com$" trifft auch auf crm.example.com zu - entweder Du tauschst die beiden Hosts (Lighty nimmt normalerweise immer den ersten, wo der Match passt), oder Du spezifizierst den Hostnamen für den Catchall etwas genauer.

Re: lighttpd Subdomain Konfiguration

Posted: 2010-10-03 13:35
by native
Tauschen hatte ich bereits versucht, das geht nicht. Ein Tipp, wie das am sinnvollsten spezifiziere, so dass alle Variaten wie "www.example.com", "example.com" etc erfast werden?

Re: lighttpd Subdomain Konfiguration

Posted: 2010-10-03 13:47
by daemotron
Man darf auch verschachteln:

Code: Select all

$HTTP["host"] =~ "(^|\.)example\.com$" {
  $HTTP["host"] =~ "(^|\.)crm\.example.com$" {
    # hier die CRM-Konfig
  }
  $HTTP["host"] !~ "(^|\.)crm\.example.com$" {
    # hier der normale virtuelle Host
  }
}

Re: lighttpd Subdomain Konfiguration

Posted: 2010-10-03 14:05
by native
Cool, das wusste ich nicht.

Meine Konfig jetzt aus wie folgt, ich habe aber immer noch das gleiche Problem:

Code: Select all

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

    $HTTP["host"] =~ "(^|\.)crm\.example\.com$" {
        # SugarCRM config
        server.document-root = "/var/www/sugar"

        auth.backend = "plain"
        auth.backend.plain.userfile  = "/etc/lighttpd/pwd/.passwd"

        auth.require = ( "/docs/" =>
            (
            "method" => "basic",
            "realm" => "Authorized personnel only",
            "require" => "user=MyUser"
            )
        )

    }

    $HTTP["host"] !~ "(^|\.)crm\.example\.com$" {
        # main host config
        server.document-root = "/var/www/example.com/https"
        accesslog.filename = "/var/www/example.com/logs/serverAccess.log"
    }
}
Noch eine Idee?