Lors de l'exécution Trac sur un serveur où mod_wsgi est configuré en démon route, Trac lance de nombreuses erreurs de forme: « Fin prématurée des en-têtes de script ». J'ai regardé ceci, et il semble qu'il y ait un décalage des versions de la bibliothèque d'expat entre Trac et Apache. Malheureusement, je ne suis pas en mesure de reconstruire Apache, ce qui semble être la seule solution proposée pour ce problème.Trac, mod_wsgi, en-têtes de fin prématurée de script
Je me demande si d'autres solutions sont possibles. Lorsque je cours en mode intégré, ce problème disparaît. Est-il possible de configurer un hôte virtuel pour les requêtes Trac qui s'exécutent en mode intégré, alors que d'autres demandes sont traitées par un hôte configuré pour le mode démon? Nous utilisons le mode démon à cause d'un projet Django, donc nous n'avons pas besoin de redémarrer le serveur quand le code est changé. Mais je ne sais pas si la mise en place de cette façon permettra de résoudre le problème, ou si une telle configuration est même possible.
Je n'ai pas encore exécuté les programmes de test; Je ne peux pas faire grand-chose pendant la journée, quand les gens utilisent le serveur, alors ça va attendre jusqu'à demain. J'ai confirmé que la version d'expat utilisée par Apache diffère de celle utilisée par Python, de manière significative. Je ne suis pas sur la machine en ce moment, mais Apache utilise quelque chose comme 1.5.x alors que Python utilise 2.0.x. Bizarrement, nous avons lancé Django en mode démon via mod_wsgi pendant plusieurs mois et n'avons jamais vu ce problème. Il est apparu seulement quand nous avons ajouté Trac au système. J'ai couru en mode embarqué toute la matinée sans voir d'erreurs. – SixDegrees
Notez que je n'aurai presque certainement pas le temps d'explorer cela dans un débogueur. Les erreurs, comme nous l'avons déjà dit, se produisent toutes à travers Trac, et elles sont sporadiques; l'actualisation de la page efface normalement le problème. Mais simplement abandonner Trac sera probablement la solution préférée si une solution nécessite beaucoup d'heures de travail. – SixDegrees
J'ai exécuté vos applications de test depuis http://code.google.com/p/modwsgi/wiki/IssuesWithExpatLibrary; Les deux exemples, avec et sans expat, se sont déroulés avec succès, donc, apparemment, l'expatrié n'est plus le coupable. – SixDegrees