Lighttpd, vhost, Trac, sous domaine

Salut à tous,

J’ai défini dans mon fichier lighttpd.conf mon site dans un virtual host:

$HTTP["host"] =~ "(^|\.)mysite\.net$" { server.document-root = "/usr/local/www/http/mysite" server.errorlog = "/var/log/lighttpd/mysite/error.log" accesslog.filename = "/var/log/lighttpd/mysite/access.log" server.error-handler-404 = "/e404.php" }

Je viens d’installer Trac sur la même machine, et j’aimerais que ce dernier soit accessible soit via trac.monsite.com, soit via www.monsite.com/trac.

J’ai ajouté ceci dans le fichier:

$HTTP["host"] =~ "trac\.mysite\.net$" { server.document-root = "/usr/local/share/trac/htdocs/" fastcgi.server = ( "/trac" => ( "trac" => ( "socket" => "/tmp/trac-fastcgi.sock", "bin-path" => "/usr/local/share/trac/cgi-bin/trac.fcgi", "check-local" => "disable", "bin-environment" => ( "TRAC_ENV" => "/usr/local/share/trac/mysite" ) ) ) ) }

Mais quand je tente d’y accéder, j’ai une erreur du navigateur (404).

Si je commente la première entrée pour y mettre Trac:

$HTTP["host"] =~ "(^|\.)mysite\.net$" { server.document-root = "/usr/local/share/trac/htdocs/" fastcgi.server = ( "/trac" => ( "trac" => ( "socket" => "/tmp/trac-fastcgi.sock", "bin-path" => "/usr/local/share/trac/cgi-bin/trac.fcgi", "check-local" => "disable", "bin-environment" => ( "TRAC_ENV" => "/usr/local/share/trac/mysite" ) ) ) ) }

Trac fonctionne. C’est donc ma redirection qui foire.

Une idée de comment je peux ré-écrire tout ça pour que tout fonctionne?

Merci d’avance

Mike

Tu as résolu ton pb déjà ? Sinon j’ai peut-être une idée …
Si tu mets “(^|.)mysite.net$” en premier, c’est logique qu’il parte dessus lorsque tu essaies d’accéder à trac.mysite.net puisque ton url match.
A ta place je testerais en inversant simplement tes deux blocs, comme ça si lighttp est un peu feignant et s’arrête au premier match, il tombera sur trac.

Sinon faut regarder l’équivalent des accesslogs, si t’as ça sous lighttp.