Hi all,

Le 2017-07-27 à 11:25, Francis Daly a écrit :
On Thu, Jul 27, 2017 at 07:45:28AM -0400, Etienne Robillard wrote:

Hi there,

I'm not sure I understand the logic of this. Can someone please
explain why the variable PATH_INFO is set to $document_uri in
uwsgi_params?
My guess (without knowing the history):

The uwsgi_params values are an example of what can be done. The
combination of SCRIPT_NAME and PATH_INFO in that file is consistent, and
is valid in some cases (that is, cases where the application corresponds
to the "root" of the server).
Actually my problem is that SCRIPT_NAME is not defined in uwsgi_params. SCRIPT_NAME is a mandatory environment variable as per HTTP/1.1 spec.

No-one has reported that there is a problem and provided a fix.
That's a major issue. A standard WSGI application should be able to use a uWSGI upstream server within the "/" location block without the need to define any "mountpoints".

In general, only the administrator knows what SCRIPT_NAME and PATH_INFO
values are appropriate in any one case, so that's the person who should
configure the two to match their particular case.

Correct. Attempting to rewrite PATH_INFO as DOCUMENT_URI seems not a reliable solution for my simple use-case.

Perhaps it would be useful for something similar to exist for uwsgi? The
fact that it does not exist already suggests that no-one has enough of
a need, to arrange that it be added.
A $uwsgi_script_name variable would be a worthy addition.
I guess that a server-level "if" could "set" two variables that could be
used to populate SCRIPT_NAME and PATH_INFO, until a uwsgi_split_path_info
directive is introduced. And that might be enough to avoid the need for
a dedicated directive.

(Actually: perhaps fastcgi_split_path_info can be used directly, even
in a location{} which does not do fastcgi_pass? It should be easy enough
to test whether that can work.)


The hard part is usually deciding what exactly is wanted. After that,
the implementation can be considered.

Good luck with it,

        f
Note that I don't use fastcgi_split_path_info. The only modification I did to fastcgi_params is:
fastcgi_param SCRIPT_NAME $fastcgi_script_name
fastcgi_param PATH_INFO $fastcgi_script_name

Etienne

--
Etienne Robillard
tkad...@yandex.com
http://www.isotopesoftware.ca/

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

Reply via email to