fastcgi and $document_uri

Gautier DI FOLCO gautier.difolco at gmail.com
Tue Oct 2 13:29:54 UTC 2012


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.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.nginx.org/pipermail/nginx/attachments/20121002/a3df8d31/attachment.html>


More information about the nginx mailing list