hi there,
I’m new to nginx and trying to configure nginx and uwsgi to get
alias+seo url working, something like this:
http://domain.com/shop/product/123 - /shop is an alias and shop dir
doesnt exist in filesystem under doc root, and this url trying to pass
query string as ?product=123
to get alias working, my config:
location /shop {
alias /public/webshop;
index main.py;
}
location ~ ^/shop.+\.py$ {
root /public/webshop;
rewrite /shop/(.*\.py?)$ /$1 break;
include uwsgi_params;
uwsgi_pass unix:$uwsgi_socket;
}
It’s working fine, as http://domain.com/shop/ finds
“/public/webshop/main.py” and pass to uwsgi socket. However
http://domain.com/shop/product/123 always report 404 not found - nginx
tries to locate “/public/webshop/product/123” and ofc it’s not there…
whereas http://homer.unisport.dk/shop/?product=123 works fine as usual.
What I’m trying is to forward all request starting with /shop to
/public/webshop/main.py and let python script parses url. I have tried
googled a lot nginx rewrite rules, e.g.
rewrite ^/shop/(.*)$ /$1 permanent;
but with no luck. Maybe I’m so bad at understand nginx rewrite,
therefore looking for any advice here.
Any thoughts would be appreciated.
/Jesper
Posted at Nginx Forum: