1

I am struggling with a new Trac 1.0.3 install (from source after having same issue installing via easy_install).

  • Debian 7.8
  • Apache 2.2.22
  • Python 2.7.3
  • Genshi 0.6
  • Sqlite 3.7.13
  • WSGI 3.3

I created the Trac environment in /var/trac and /var/trac/cgi-bin holds trac.wsgi. I've updated Apache... LoadModule wsgi_module /usr/lib/apache2/modules/mod_wsgi.so and my site's conf...

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>

My /var/trac/log/trac.log (which is empty) is configured in trac.ini...

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

My Apache error log...

[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 ''.

A browser request in Apache's access log...

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"

The problem: Apache is serving the contents of /var/trac/cgi-bin/trac.wsgi... I see the Python code.

I don't know where I went wrong but your help will be greatly appreciated. Thanks.

UPDATE 1: As you can see the above info surrounds making a GET /trac request. I have found though making a GET /trac/login request results in Apache throwing an HTTP 500.

UPDATE 2: I disabled the mis-configured LDAP auth and the HTTP 500 errors in UPDATE 1 are now HTTP 404.

2 Answers 2

0

Within your cgi-bin directives, try adding "ExecCGI" option and adding the cgi-script handler:

<Directory /var/trac/cgi-bin>
    WSGIApplicationGroup %{GLOBAL}
    Order deny,allow
    Allow from all
    Options ExecCGI
    SetHandler cgi-script
</Directory>
3
  • I added Options and SetHandler as suggested - seems to have no impact. I also tried, rather than SetHandler cgi-script, SetHandler wsgi-script - again, no difference. Jan 30, 2015 at 2:15
  • Another stab in the dark. Is the trac.wsgi file executable? chmod 755 /var/trac/cgi-bin/trac.wsgi Jan 30, 2015 at 2:49
  • Yes, trac.wsgi is owned by www-data and is executable. Jan 30, 2015 at 14:33
0

Resolved my problem...

Apache configuration...

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 this config to that posted in the question.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .