Problem when using subfolder

Hi There,

need to solve the following Problem:

location / should point to /var/www/myfirstside
and location /subside should point to /var/www/mysecondside

I have no idea how to solve this.

I tried:

location / {
root /var/www/myfirstside
}

location /subside {
root /var/www/mysecondside
}

but this doesn’t work because nginx send all requests for /subside to
/var/www/mysecondside/subside …

Could anybody help me?

THX allot
Pascal

Posted at Nginx Forum:
http://forum.nginx.org/read.php?2,234428,234428#msg-234428

Hello!

On Tue, Dec 25, 2012 at 11:04:03AM -0500, PascalTurbo wrote:

Could anybody help me?

Try “alias”:

location / {
    root /var/www/myfirstside;
}

location /subside/ {
    alias /var/www/mysecondside/;
}

See http://nginx.org/r/alias for details.


Maxim D.
http://nginx.com/support.html

Ah IC your appending a context path, but since this isnt Java, Im still
curious as to why

ngnix docs state that the closest match will always be found in location
phrases

So why is alias needed?

Hello!

On Tue, Dec 25, 2012 at 08:52:32AM -0800, Bill C. wrote:

ngnix docs state that the closest match will always be found in location phrases

So why is alias needed?

Normally (with root specified) nginx constructs file name as
+ . This allows to specify root at any level, and it
will work without surprises via configuration inheritance. I.e.

root /path/to;

location /foo/ {
    # ...
}

and

location /foo/ {
    root /path/to;
}

and even

location /foo/ {
    ...
    location /foo/bar {
        root /path/to;
    }
}

all will result in a “/foo/bar.txt” request being mapped into
a “/path/to/foo/bar.txt” file.

In contrast, alias replaces part of the URI matched by a location,
and file name will be + . This is
more fragile as things change as you move the alias directive to
another place, but allows to map URI to file system if some parts
of the URI needs to be modified, e.g. in configuration like

location /foo/ {
    alias /path/to/baz/;
}

request to “/foo/bar.txt” will be mappend into
“/path/to/baz/bar.txt” file.

It is generally recommended to use “root”, except in situations
like thread starter has, i.e. when URI needs to be modified when
mapping to a file system.

See here for docs:

http://nginx.org/r/root
http://nginx.org/r/alias

[…]


Maxim D.
http://nginx.com/support.html

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs