我正在苦苦做一个新的Trac 1.0.3安装(在通过easy_install安装相同的问题之后,从源码安装)。
我在/var/trac创build了Trac环境, /var/trac /var/trac/cgi-bin保存了trac.wsgi 。 我已经更新了Apache … LoadModule wsgi_module /usr/lib/apache2/modules/mod_wsgi.so和我的网站的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>
我的/var/trac/log/trac.log (这是空的)在trac.iniconfiguration…
[logging] log_file = /var/trac/log/trac.log log_level = DEBUG log_type = file
我的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 ''.
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"
问题: Apache服务于/var/trac/cgi-bin/trac.wsgi的内容 …我看到Python代码。
我不知道我哪里错了,但你的帮助将不胜感激。 谢谢。
更新1:正如你可以看到上面的信息围绕做一个GET /trac请求。 我发现虽然做了一个GET /trac/login请求结果在Apache抛出一个HTTP 500 。
更新2:我禁用了错误configuration的LDAP身份validation,并且UPDATE 1中的HTTP 500错误现在是HTTP 404 。
在您的cgi-bin指令中,尝试添加“ExecCGI”选项并添加cgi脚本处理程序:
<Directory /var/trac/cgi-bin> WSGIApplicationGroup %{GLOBAL} Order deny,allow Allow from all Options ExecCGI SetHandler cgi-script </Directory>
解决了我的问题…
Apacheconfiguration…
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>
比较这个configuration与问题中发布的configuration。