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.

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>
  • 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. – user1801810 Jan 30 '15 at 2:15
  • Another stab in the dark. Is the trac.wsgi file executable? chmod 755 /var/trac/cgi-bin/trac.wsgi – Dan Armstrong Jan 30 '15 at 2:49
  • Yes, trac.wsgi is owned by www-data and is executable. – user1801810 Jan 30 '15 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.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.