Is there a defined way to cancel anĀ upstream proxy request from within the ::revproxy::upstream filter?

Inside the URL rewrite callback, one can decide based on all context info, whether to forward to A or to B. However, one cannot decide whether to forward or not, i.e. calling revproxy::upstream (and therefore the callback) or not (using all other registered procs, filters, ...).

This routing decision already happens already in the urlspace mapping (where e.g. "ns_register_filter" or "ns_register_proc" register url/handler pairs). The urlspace code supports already some context info (see e.g. [1]) for deciding on the mapping, but the context info does not cover (a) incoming ports and (b) there is currently not interface for specifying the context spec via theĀ  "ns_register_*" APIs. There is always room for improvement.

i don't think, that trying to emulate the server-behavior inside revproxy::upstream is the right way to go, this might work in certain cases, but not in general. Following your original approach with multiple servers seems better for now ...

-g

[1] https://naviserver.sourceforge.io/n/naviserver/files/ns_server.html




_______________________________________________
naviserver-devel mailing list
naviserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/naviserver-devel

Reply via email to