CGI specifies that REQUEST_URI is relative to the root (and does not include scheme name, hostname, port)
This commit is contained in:
parent
9ac586adc8
commit
14a6e0cfc2
|
@ -40,6 +40,7 @@ SWITCH_MODULE_DEFINITION(mod_xml_scgi, mod_xml_scgi_load, mod_xml_scgi_shutdown,
|
||||||
struct xml_binding {
|
struct xml_binding {
|
||||||
char *host;
|
char *host;
|
||||||
switch_port_t port;
|
switch_port_t port;
|
||||||
|
char *uri;
|
||||||
char *url;
|
char *url;
|
||||||
|
|
||||||
int timeout;
|
int timeout;
|
||||||
|
@ -144,7 +145,7 @@ static switch_xml_t xml_url_fetch(const char *section, const char *tag_name, con
|
||||||
switch_stream_handle_t stream = { 0 };
|
switch_stream_handle_t stream = { 0 };
|
||||||
char *txt = NULL;
|
char *txt = NULL;
|
||||||
|
|
||||||
strncpy(hostname, switch_core_get_switchname(), sizeof(hostname));
|
strncpy(hostname, switch_core_get_switchname(), sizeof(hostname));
|
||||||
|
|
||||||
if (!binding) {
|
if (!binding) {
|
||||||
return NULL;
|
return NULL;
|
||||||
|
@ -157,7 +158,7 @@ static switch_xml_t xml_url_fetch(const char *section, const char *tag_name, con
|
||||||
switch_assert(data);
|
switch_assert(data);
|
||||||
|
|
||||||
scgi_add_param(&handle, "REQUEST_METHOD", "POST");
|
scgi_add_param(&handle, "REQUEST_METHOD", "POST");
|
||||||
scgi_add_param(&handle, "REQUEST_URI", binding->url);
|
scgi_add_param(&handle, "REQUEST_URI", binding->uri);
|
||||||
scgi_add_body(&handle, data);
|
scgi_add_body(&handle, data);
|
||||||
|
|
||||||
if (scgi_connect(&handle, binding->host, binding->port, binding->timeout * 1000) == SCGI_SUCCESS) {
|
if (scgi_connect(&handle, binding->host, binding->port, binding->timeout * 1000) == SCGI_SUCCESS) {
|
||||||
|
@ -318,6 +319,7 @@ static switch_status_t do_config(void)
|
||||||
binding->host = switch_core_strdup(globals.pool, host);
|
binding->host = switch_core_strdup(globals.pool, host);
|
||||||
binding->port = atoi(port);
|
binding->port = atoi(port);
|
||||||
binding->vars_map = vars_map;
|
binding->vars_map = vars_map;
|
||||||
|
binding->uri = switch_mprintf("/%s", bname);
|
||||||
binding->url = switch_mprintf("scgi://%s:%s/%s", host, port, bname);
|
binding->url = switch_mprintf("scgi://%s:%s/%s", host, port, bname);
|
||||||
|
|
||||||
if (server) {
|
if (server) {
|
||||||
|
|
Loading…
Reference in New Issue