URI re-mapping using try_files

mrtn nginx-forum at nginx.us
Thu Oct 11 13:19:23 UTC 2012


I am new to nginx, and am still learning my way.

I use nginx to serve static html pages to users, and in particular, I want
users who visit 'www.example.com/public/doc/abc123?para=data' to be served
with the file '/home/www/example/public/doc/abc123/abc123.html' on the
server, but 'www.example.com/public/doc/abc123?para=data' stays in the
user's browser address bar.

So there are two issues here: 1. map URI pattern '/public/doc/blah' to file
'/home/www/example/public/doc/blah/blah.html' on the server; 2. keep query
string '?parap=data' in the address bar.

I wonder if these can be solved by using `try_files` within a location
block. For example, substring the $uri to take out '/blah' part, and append
it to the $uri followed by '.html'. And possibly append $args after '.html'?
How exactly do we do this in nginx? Thanks!

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

More information about the nginx mailing list