Forum: NGINX fastcgi and $document_uri

Posted by Gautier DI FOLCO (Guest)
on 2012-10-02 15:30
(Received via mailing list)
Hi all,

I'm trying to setup nginx as bellow:
      location ~ ^/git(.*)$ {
         include /etc/nginx/fastcgi.conf;
         fastcgi_param  PATH_INFO        $1;
         fastcgi_pass  127.0.0.1:8010;

      }

For information, /etc/nginx/fastcgi.conf:
fastcgi_param  SCRIPT_FILENAME
$document_root$fastcgi_script_name;
fastcgi_param  QUERY_STRING
$query_string;
fastcgi_param  REQUEST_METHOD
$request_method;
fastcgi_param  CONTENT_TYPE
$content_type;
fastcgi_param  CONTENT_LENGTH
$content_length;


fastcgi_param  SCRIPT_NAME
$fastcgi_script_name;
fastcgi_param  REQUEST_URI
$request_uri;
fastcgi_param  DOCUMENT_URI
$document_uri;
fastcgi_param  DOCUMENT_ROOT
$document_root;
fastcgi_param  SERVER_PROTOCOL
$server_protocol;


fastcgi_param  GATEWAY_INTERFACE
CGI/1.1;
fastcgi_param  SERVER_SOFTWARE
nginx/$nginx_version;


fastcgi_param  REMOTE_ADDR
$remote_addr;
fastcgi_param  REMOTE_PORT
$remote_port;
fastcgi_param  SERVER_ADDR
$server_addr;
fastcgi_param  SERVER_PORT        $server_port;
fastcgi_param  SERVER_NAME        $server_name;

It works well, for example, for /git/repo1.git, the PATH_INFO if 
/repo1.git.
I think using regex is slow, I tryied this :
      location /git {
         include /etc/nginx/fastcgi.conf;
         fastcgi_param  PATH_INFO        $document_uri;
         fastcgi_pass  127.0.0.1:8010;
      }

But /git/repo1.git gives me /git/repo1.git instead of I expected 
/repo1.git.
Why? is their a mean to do not use regex or do it faster?

For your help,
In advance,
Thanks.
Please log in before posting. Registration is free and takes only a minute.
Existing account (Switch to SSL-encrypted connection)
NEW: Do you have a Google/GoogleMail or Yahoo account? No registration required!
Log in with Google account | Log in with Yahoo account
No account? Register here.