Keep Alive piles up

Maxim Dounin mdounin at mdounin.ru
Mon Jun 29 19:55:48 MSD 2009


Hello!

On Mon, Jun 29, 2009 at 10:18:27AM -0400, meto wrote:

> I have my candidate for this failure. To enable php for many directories in a domain with different root dirs i use if for php not sugested location. By the way it's grate and take me a while to figure ;)
> 
> 
> #php support
>         if ( $request_filename ~* \.php(.*)$ ) { # is it php?
>         fastcgi_pass    127.0.0.1:9000;
>         expires off;
>         }
> 
> fastcgi_index  index.php;
> fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
> include fastcgi_params;
> 
> I used  if ( $request_filename ~* \.php(.*)$ ) { for capability with apache which inderstands /index.php/someargs as a php file with /someargs arguments - this is used by SMF option to remove ? from adress.
> Apparently this led to some bogus queries with images extensions that where passed to fastcgi.

Using if() on $request_uri/$request_filename suggests that config 
should be rewritten, but anyway nginx shouldn't coredump.

It still doesn't clear for me what caused such wierd behaviour.  
Probably some if's confused the config parsing code, but the 
snipped above isn't enough to reproduce problem.

> 
> Tu sum up i disabled that option and i'm waiting to see if there are any results. But it shows that we have to work on the way nginx reads the real name of the files. Examples of such links you can see on http://www.gimpuj.info/index.php

By the way, nginx itself doesn't try to "read the real name of the 
files".  It's up to config author to instruct it what to do.

Maxim Dounin





More information about the nginx mailing list