As a sidenote, why using location ~ ^/php-fpm/ and not location /php-fpm/ ?
Although being distant to your case (I see others are helping you nicely :o) ), I can but particularly note & enjoy the use of a non-greedy modifier in the regex part of fastcgi_split_path_info intended to result in $fastcgi_script_name. That detail means a lot. Keep up the good work :o) --- *B. R.* On Thu, May 5, 2016 at 6:44 PM, Francis Daly <[email protected]> wrote: > On Thu, May 05, 2016 at 05:13:29AM +0530, Joyce Babu wrote: > > Hi there, > > > Is it possible to do something like this? > > > > location /test/ { > > rewrite "^/test/([a-z]+).php$" /php-fpm/test/test.php?q=$1 last; > > } > > > > location ~ ^/php-fpm/ { > > location ~ [^/]\.php(/|$) { > > fastcgi_split_path_info ^/php-fpm(.+?\.php)(/.*)$; > > > > fastcgi_pass 127.0.0.1:9000; > > fastcgi_index index.php; > > include fastcgi_params; > > } > > } > > > > > > What I have tried to do here is rewrite to add a special prefix > (/php-fpm) > > to the rewritten urls. and nest the php location block within it. Then > use > > fastcgi_split_path_info to create new $fastcgi_script_name without the > > special prefix. I tried the above code, but it is not working. > > fastcgi_split_path_info is not generating $fastcgi_script_name without > the > > /php-fpm prefix. > > That's because your fastcgi_split_path_info pattern does not match - > .php is not followed by / in your rewritten url. > > Because of the location{} you are in, it is probably simplest to just > replace the second capture part of that pattern with (.*)$. > > Cheers, > > f > -- > Francis Daly [email protected] > > _______________________________________________ > nginx mailing list > [email protected] > http://mailman.nginx.org/mailman/listinfo/nginx >
_______________________________________________ nginx mailing list [email protected] http://mailman.nginx.org/mailman/listinfo/nginx
