Hi!

I feel something goes wrong when I start Trac as FastCGI
application.

Every time I request URL in browser, trac turns me back to
the projects list and appends selected link to the end of the
current URL. So I can easily get something like

http://localhost:8081/projects/project1/project2/project3

And I got again to the projects list.

I guess, some environment variable (like SCRIPT_NAME or
PATH_INFO) isn't set correctly. Here is a script to watch
variables:

$ cat /tmp/getenv.pl
#!/usr/bin/perl -w

use FCGI;

while( FCGI::accept() >= 0 )
{
    print( "Content-Type: text/plain", "\n\n" );
    foreach $key (sort keys(%ENV)) {
        print "$key = $ENV{$key}\n";
    }

}

And what it returns (in Firefox browser):

DOCUMENT_ROOT = /html
FCGI_ROLE = RESPONDER
HTTP_ACCEPT = 
text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
HTTP_ACCEPT_CHARSET = ISO-8859-1,utf-8;q=0.7,*;q=0.7
HTTP_ACCEPT_ENCODING = gzip,deflate
HTTP_ACCEPT_LANGUAGE = ru,en-us;q=0.7,en;q=0.3
HTTP_CONNECTION = keep-alive
HTTP_COOKIE = trac_session=a07db4a5cb8088d6ea4885c6
HTTP_HOST = localhost:8081
HTTP_KEEP_ALIVE = 300
HTTP_USER_AGENT = Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.8) 
Gecko/20050520 Firefox/1.0.4
PATH = /bin:/usr/bin
PATH_INFO = /projects/aster/login
PATH_TRANSLATED = /usr/share/trac/cgi-bin/projects/aster/login
PHP_FCGI_CHILDREN = 5
PWD = /home/bga
QUERY_STRING = 
REMOTE_ADDR = 127.0.0.1
REMOTE_USER = 
REQUEST_METHOD = GET
REQUEST_URI = /projects/aster/login
SCRIPT_FILENAME = /usr/share/trac/cgi-bin/projects/aster/login
SCRIPT_NAME = /projects/aster/login
SERVER_NAME = bga.tepkom.spb.su
SERVER_PORT = 8081
SERVER_PROTOCOL = HTTP/1.1
SHLVL = 0
_ = sh

Trac users and developers, please, check what also is missing
or what is incorrect?


  P.S. I use nginx web-server (http://www.sysoev.ru/en/) and it's
  config looks like

        location /projects/ {
            fastcgi_pass   localhost:1027;
            fastcgi_param  SCRIPT_FILENAME      
/usr/share/trac/cgi-bin$fastcgi_script_name;
            fastcgi_param  SCRIPT_NAME          $fastcgi_script_name;
            fastcgi_param  QUERY_STRING     $query_string;
            fastcgi_param  REQUEST_URI      $fastcgi_script_name;
            fastcgi_param  PATH_TRANSLATED  
/usr/share/trac/cgi-bin$fastcgi_script_name;
            fastcgi_param  PATH_INFO        $fastcgi_script_name;
            fastcgi_param  REMOTE_ADDR      $remote_addr;
            fastcgi_param  REMOTE_USER      $remote_user;
            fastcgi_param  REQUEST_METHOD   $request_method;
#           fastcgi_param  CONTENT_TYPE     $content_type;
#           fastcgi_param  CONTENT_LENGTH   $content_length;
            fastcgi_param  SERVER_NAME  $server_name;
            fastcgi_param  SERVER_PORT  $server_port;
            fastcgi_param  SERVER_PROTOCOL $server_protocol;
            fastcgi_param  DOCUMENT_ROOT  $document_root;
        }
_______________________________________________
Trac mailing list
[email protected]
http://lists.edgewall.com/mailman/listinfo/trac

Reply via email to