Hi all,

I have an app on a domain that is set by a developer to proxy at certain URLs:

|example.com/browser/123foo0/stuff.js |

for example, where |123foo0| is some random key. The key may also change length in future.

That’s all fine.

But I’d like to interrupt specific requests and not proxy them: I don’t want to serve anything after the key that is in the path |/welcome| for example, i.e. not proxy any of these:

|example.com/browser/123foo0/welcome/welcome.html example.com/browser/foo456b/welcome/welcome.css example.com/browser/bar123f/welcome/welcome.js example.com/browser/456foob/welcome/other.stuff example.com/browser/foo789b/welcome/ |

So I tried simple stuff first like: |location ^~ /browser/.*/welcome/welcome.html {...| but couldn’t even get that working, before moving on to try capturing groups like css files and scripts and so on.

I also tried putting regex in quotes, but that didn’t seem to work either.

What am I doing wrong?

Here’s a truncated version of the conf, with the location blocks only:

|location ^~ "/browser/.*/welcome/welcome.html" { return 200 'Not proxied.\n'; add_header Content-Type text/plain; } location ^~ /browser { proxy_pass http://127.0.0.1:1234; proxy_set_header Host $http_host; } # landing page location / { root /var/www/foobar; index index.html; try_files $uri $uri/ /index.html; } |

Thanks,
Jore


​

_______________________________________________
nginx mailing list
nginx@nginx.org
https://mailman.nginx.org/mailman/listinfo/nginx

Reply via email to