redirect subdomain to internal location
António P. P. Almeida
appa at perusio.net
Wed May 25 19:07:11 MSD 2011
On 25 Mai 2011 15h26 WEST, nginx-forum at nginx.us wrote:
> Thanks guys,
>
> I get that now, in my newness to nginx I was overcomplicating
> things. My server_name is now doing what I had hoped to achieve.
>
> If you can bear with me for one more question, how do I get the
> 'client' out of domain.com/client/more/stuff.htm? I want to use the
> 'client' part of the uri to search a redis key/value pair.
>
> I had success with this code for query strings but couldn't work out
> how to get the first part of the uri to be my key?
>
> location / {
> eval_escalate on;
> eval $res {
> set_unescape_uri $key $arg_key;
> redis2_query get $key;
> redis2_pass 127.0.0.1:6379;
> }
> set_by_lua $path "return
> require('redis.parser').parse_reply(ngx.arg[1])" $res;
> proxy_pass http://app_cluster_1/$path;
> proxy_redirect off;
> }
If I'm understanding correctly what you want to do, you'll need a
location with a regex that captures that URI component. E.g.:
location /(?<clientkey>[^/]*)/ {
(...)
set_unescape_uri $key $client_key;
(...)
}
This will match all URIs of the form /whatever/anything
--- appa
More information about the nginx
mailing list