Nginx problem - failed (20: Not a directory)

I have some rewrites for the SMF forum and they work just fine.
The problem I’m having is that they are filling up my error log with
“failed (20: Not a directory)” messages for some reason.

My rewrites are :

location /forum/ {
root /usr/www-data/domain.com/httpdocs;
if (!-e $request_filename) {
rewrite
^/index.php/([a-z]+),([0-9]+).(\w+)/(\w+),(\w+)/(\w+).html
/index.php?$1=$2.$3&$4=$5&$6 last;
rewrite ^/index.php/([a-z]+),([0-9]+).(\w+)/(\w+),(\w+).html
/index.php?$1=$2.$3&$4=$5 last;
rewrite ^/index.php/([a-z]+),([0-9]+).(\w+)/(\w+)/(\w+).html
/index.php?$1=$2.$3&$4&$5 last;
rewrite ^/index.php/([a-z]+),([0-9]+).(\w+)/(\w+).html
/index.php?$1=$2.$3&$4 last;
rewrite ^/index.php/([a-z]+),([0-9]+).(\w+).html
/index.php?$1=$2.$3 last;
}
}

The exact error message is :

[error] 75594#0: *1 open()
“/usr/www-data/domain.com/httpdocs/forum/index.php/topic,27483.msg586060/topicseen.html”
failed (20: Not a directory), client: XXX.XXX.XXX.XXX, server:
domain.com, request: “GET
/forum/index.php/topic,27483.msg586060/topicseen.html HTTP/1.1”, host:
www.domain.com:8080

Could someone please help me with this?

Hello!

On Sat, Jul 03, 2010 at 09:46:11PM -0700, Ken wrote:

    rewrite ^/index\.php/([a-z]+),([0-9]+)\.(\w+)/(\w+)/(\w+)\.html /index.php?$1=$2.$3&$4&$5 last; 
    rewrite ^/index\.php/([a-z]+),([0-9]+)\.(\w+)/(\w+)\.html /index.php?$1=$2.$3&$4 last; 
    rewrite ^/index\.php/([a-z]+),([0-9]+)\.(\w+)\.html /index.php?$1=$2.$3 last; 
    } 
 } 

Your rewrites doesn’t match anything as they are in “/forum/”
location (and hence only have chance to see requests starting from
“/forum/”) but anchored to “^/index”.

The exact error message is :

[error] 75594#0: *1 open() “/usr/www-data/domain.com/httpdocs/forum/index.php/topic,27483.msg586060/topicseen.html” failed (20: Not a directory), client: XXX.XXX.XXX.XXX, server: domain.com, request: “GET /forum/index.php/topic,27483.msg586060/topicseen.html HTTP/1.1”, host: “www.domain.com:8080

Could someone please help me with this?

This is expected error message: you are trying to access something
below index.php, but index.php isn’t a directory.

Maxim D.

On Wed, Jul 14, 2010 at 1:16 AM, Maxim D. [email protected]
wrote:

This is expected error message: you are trying to access something
below index.php, but index.php isn’t a directory.

So, where’s PATHINFO ?


Ren Xiaolei