Welcome! Log In Create A New Profile

Advanced

Re: Equivalent to "dirname"

merlin corey
December 14, 2009 04:54PM
On Mon, Dec 14, 2009 at 12:59 PM, Pior Bastida <pior@mentel.com> wrote:
> On December 14, 2009 03:20:20 pm merlin corey wrote:
>> On Mon, Dec 14, 2009 at 12:09 PM, Pior Bastida <pior@pbastida.net> wrote:
>> > Hello,
>> >
>> > I would like to check if the directory of a non existant file exist.
>
>> The rewrite module provides a -d operator to the if directive which
>> will test for a directory existence; please see
>> http://wiki.nginx.org/NginxHttpRewriteModule#if .
>>
>> Alternatively, if you are going to end up using the index or some
>> value inside the directory if it exists, then you should consider
>> using the try_files directive documented here:
>> http://wiki.nginx.org/NginxHttpCoreModule#try_files .
>
> Thank you Merlin.
>
> I almost know all the wiki, including -d and try_files.
>
> Here is what I need to do :
>
>  1. try to server /poipoi/foobar
>  2. if the file doesn't exist, check if /poipoi/ exist
>  3. if this directory doesn't exist, return a redirect, otherwise return 404
>
> How can I get the base directory of $request_filename ?
>
> --
> Pior Bastida
> System Administrator
> Mentel Inc
> pior@mentel.com
>

Pior,

Sorry for confusion! I don't think you can directly do what you want
do, in that there is no specific "dirname function" (there isn't even
a concept of a function in the nginx configuration language right
now).

That said you should be able to do what you want using regular
expression captures. Something like the following might work for your
needs, but I have not tested it and I am the best with regex:

location ~ ^(.*)/(.*)$ {
if (-d $1) {
rewrite ^ http://otherplace;
}
}

Thanks,
Merlin

_______________________________________________
nginx mailing list
nginx@nginx.org
http://nginx.org/mailman/listinfo/nginx
Subject Author Posted

Equivalent to "dirname"

Pior Bastida December 14, 2009 03:12PM

Re: Equivalent to "dirname"

merlin corey December 14, 2009 03:24PM

Re: Equivalent to "dirname"

Pior Bastida December 14, 2009 04:28PM

Re: Equivalent to "dirname"

merlin corey December 14, 2009 04:54PM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 163
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready