Trac / Apache exibe o conteúdo do script (WSGI)

1

Estou lutando com uma nova instalação do Trac 1.0.3 (a partir do código-fonte após ter o mesmo problema de instalação via easy_install ).

  • Debian 7.8
  • Apache 2.2.22
  • Python 2.7.3
  • Genshi 0,6
  • Sqlite 3.7.13
  • WSGI 3.3

Eu criei o ambiente do Trac em /var/trac e /var/trac/cgi-bin hold trac.wsgi . Eu atualizei o Apache ... LoadModule wsgi_module /usr/lib/apache2/modules/mod_wsgi.so e o conf do meu site ...

WSGIScriptAlias /trac /var/trac/cgi-bin/trac.wsgi

<Directory /var/trac/cgi-bin>
    WSGIApplicationGroup %{GLOBAL}
    Order deny,allow
    Allow from all
</Directory>

<Location /trac>
    Order deny,allow
    Allow from all
</Location>

Meu /var/trac/log/trac.log (que está vazio) está configurado em trac.ini ...

[logging]
log_file = /var/trac/log/trac.log
log_level = DEBUG
log_type = file

Meu log de erros do Apache ...

[Thu Jan 29 18:38:46 2015] [debug] util_ldap.c(1990): LDAP merging Shared Cache conf: shm=0x7f4d8661f0f0 rmm=0x7f4d8661f148 for VHOST: hostname.example.net
[Thu Jan 29 18:38:46 2015] [info] APR LDAP: Built with OpenLDAP LDAP SDK
[Thu Jan 29 18:38:46 2015] [info] LDAP: SSL support available
[Thu Jan 29 18:38:46 2015] [debug] mod_wsgi.c(10080): mod_wsgi (pid=12945): Socket for 'My-WSGIDaemonProcess' is '/var/run/apache2/wsgi.12945.0.1.sock'.
[Thu Jan 29 18:38:46 2015] [notice] Apache/2.2.22 (Debian) mod_wsgi/3.3 Python/2.7.3 configured -- resuming normal operations
[Thu Jan 29 18:38:46 2015] [info] mod_wsgi (pid=12951): Starting process 'My-WSGIDaemonProcess' with uid=33, gid=33 and threads=15.
[Thu Jan 29 18:38:46 2015] [info] mod_wsgi (pid=12951): Initializing Python.
[Thu Jan 29 18:38:46 2015] [info] Server built: Dec 23 2014 22:48:32
[Thu Jan 29 18:38:46 2015] [debug] worker.c(1757): AcceptMutex: sysvsem (default: sysvsem)
[Thu Jan 29 18:38:46 2015] [info] mod_wsgi (pid=12952): Initializing Python.
[Thu Jan 29 18:38:46 2015] [info] mod_wsgi (pid=12953): Initializing Python.
[Thu Jan 29 18:38:46 2015] [info] mod_wsgi (pid=12952): Attach interpreter ''.
[Thu Jan 29 18:38:46 2015] [info] mod_wsgi (pid=12951): Attach interpreter ''.
[Thu Jan 29 18:38:46 2015] [info] mod_wsgi (pid=12953): Attach interpreter ''.

Uma solicitação do navegador no log de acesso do Apache ...

1.2.3.4 - - [29/Jan/2015:18:44:20 -0500] "GET /trac HTTP/1.1" 304 188 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:35.0) Gecko/20100101 Firefox/35.0"

O problema: o Apache está servindo o conteúdo de /var/trac/cgi-bin/trac.wsgi ... Eu vejo o código Python.

Eu não sei onde eu errei, mas sua ajuda será muito apreciada. Obrigado.

UPDATE 1: Como você pode ver, as informações acima estão fazendo uma solicitação GET /trac . Eu descobri que fazer uma solicitação de GET /trac/login resulta no Apache jogando HTTP 500 .

ATUALIZAÇÃO 2: desabilitei a autenticação LDAP mal configurada e os erros HTTP 500 em UPDATE 1 agora são HTTP 404 .

    
por user1801810 30.01.2015 / 01:07

2 respostas

0

Resolvi meu problema ...

Configuração do Apache ...

WSGIScriptAlias / /var/trac/cgi-bin/trac.wsgi

<Directory /var/trac/cgi-bin>
    AllowOverride None
    WSGIApplicationGroup %{GLOBAL}
    Order deny,allow
    Allow from all
    Options ExecCGI
</Directory>

Compare essa configuração com a postada na pergunta.

    
por 30.01.2015 / 17:36
0

Dentro de suas diretivas cgi-bin, tente adicionar a opção "ExecCGI" e adicionar o manipulador de scripts cgi:

<Directory /var/trac/cgi-bin>
    WSGIApplicationGroup %{GLOBAL}
    Order deny,allow
    Allow from all
    Options ExecCGI
    SetHandler cgi-script
</Directory>
    
por 30.01.2015 / 03:00