NGINX uWSGI with require_login needs uwsgi_param SCRIPT_NAME '';

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

NGINX uWSGI with require_login needs uwsgi_param SCRIPT_NAME '';

David Trudgian
Hi,

When I enabled 'require_login = True' on a galaxy instance running with NGINX+uWSGI I receive internal server error pages due to a Key error for

File 'lib/galaxy/web/framework/base.py', line 356 in path
  return self.environ['SCRIPT_NAME'] + self.environ['PATH_INFO']
KeyError: 'SCRIPT_NAME'

Works fine with 'require_login = False' - I'm not sure why require_login makes it take a code path which needs SCRIPT_NAME.

Anyway - the addition of...

uwsgi_param SCRIPT_NAME '';

... to the nginx.conf prevents this error. Should I try and add this to the uWSGI config snippets on the wiki?

Thanks,

--
David Trudgian Ph.D.,
Computational Scientist
UT Southwestern BioHPC

--
David Trudgian Ph.D.,
Computational Scientist
UT Southwestern BioHPC


UT Southwestern

Medical Center

The future of medicine, today.


___________________________________________________________
Please keep all replies on the list by using "reply all"
in your mail client.  To manage your subscriptions to this
and other Galaxy lists, please use the interface at:
  https://lists.galaxyproject.org/

To search Galaxy mailing lists use the unified search at:
  http://galaxyproject.org/search/mailinglists/
Reply | Threaded
Open this post in threaded view
|

Re: NGINX uWSGI with require_login needs uwsgi_param SCRIPT_NAME '';

Dannon Baker-2
Hey David,

What version of galaxy are you using?  I'm not able to reproduce this with the current release, but maybe I don't have all the information here.

Previously, this SCRIPT_NAME issue was observed when static_enabled was true, but I've never seen it otherwise.  Any information you might be able to share to help me reproduce this would be valuable -- we shouldn't have to inject meaningless parameters into the environment to make things work.

-Dannon


On Thu, Apr 2, 2015 at 3:23 PM, David Trudgian <[hidden email]> wrote:
Hi,

When I enabled 'require_login = True' on a galaxy instance running with NGINX+uWSGI I receive internal server error pages due to a Key error for

File 'lib/galaxy/web/framework/base.py', line 356 in path
  return self.environ['SCRIPT_NAME'] + self.environ['PATH_INFO']
KeyError: 'SCRIPT_NAME'

Works fine with 'require_login = False' - I'm not sure why require_login makes it take a code path which needs SCRIPT_NAME.

Anyway - the addition of...

uwsgi_param SCRIPT_NAME '';

... to the nginx.conf prevents this error. Should I try and add this to the uWSGI config snippets on the wiki?

Thanks,

--
David Trudgian Ph.D.,
Computational Scientist
UT Southwestern BioHPC

--
David Trudgian Ph.D.,
Computational Scientist
UT Southwestern BioHPC


UT Southwestern

Medical Center

The future of medicine, today.


___________________________________________________________
Please keep all replies on the list by using "reply all"
in your mail client.  To manage your subscriptions to this
and other Galaxy lists, please use the interface at:
  https://lists.galaxyproject.org/

To search Galaxy mailing lists use the unified search at:
  http://galaxyproject.org/search/mailinglists/


___________________________________________________________
Please keep all replies on the list by using "reply all"
in your mail client.  To manage your subscriptions to this
and other Galaxy lists, please use the interface at:
  https://lists.galaxyproject.org/

To search Galaxy mailing lists use the unified search at:
  http://galaxyproject.org/search/mailinglists/
Reply | Threaded
Open this post in threaded view
|

Re: NGINX uWSGI with require_login needs uwsgi_param SCRIPT_NAME '';

David Trudgian
Dannon, thanks,

This is on dev at commit 43a94ada37124dde5759b0c94bf25a97ff4da17a

Am running nginx 1.6.2 on RedHat EL 6.6
Python 2.7.8 with uWSGI 2.0.10

I can send my galaxy.ini and nginx.conf to you separately off list.

DT

--
David Trudgian Ph.D.,
Computational Scientist
UT Southwestern BioHPC

From: Dannon Baker [[hidden email]]
Sent: Thursday, April 02, 2015 3:52 PM
To: David Trudgian
Cc: [hidden email]
Subject: Re: [galaxy-dev] NGINX uWSGI with require_login needs uwsgi_param SCRIPT_NAME '';

Hey David,

What version of galaxy are you using?  I'm not able to reproduce this with the current release, but maybe I don't have all the information here.

Previously, this SCRIPT_NAME issue was observed when static_enabled was true, but I've never seen it otherwise.  Any information you might be able to share to help me reproduce this would be valuable -- we shouldn't have to inject meaningless parameters into the environment to make things work.

-Dannon


On Thu, Apr 2, 2015 at 3:23 PM, David Trudgian <[hidden email]> wrote:
Hi,

When I enabled 'require_login = True' on a galaxy instance running with NGINX+uWSGI I receive internal server error pages due to a Key error for

File 'lib/galaxy/web/framework/base.py', line 356 in path
  return self.environ['SCRIPT_NAME'] + self.environ['PATH_INFO']
KeyError: 'SCRIPT_NAME'

Works fine with 'require_login = False' - I'm not sure why require_login makes it take a code path which needs SCRIPT_NAME.

Anyway - the addition of...

uwsgi_param SCRIPT_NAME '';

... to the nginx.conf prevents this error. Should I try and add this to the uWSGI config snippets on the wiki?

Thanks,

--
David Trudgian Ph.D.,
Computational Scientist
UT Southwestern BioHPC

--
David Trudgian Ph.D.,
Computational Scientist
UT Southwestern BioHPC


UT Southwestern

Medical Center

The future of medicine, today.


___________________________________________________________
Please keep all replies on the list by using "reply all"
in your mail client.  To manage your subscriptions to this
and other Galaxy lists, please use the interface at:
  https://lists.galaxyproject.org/

To search Galaxy mailing lists use the unified search at:
  http://galaxyproject.org/search/mailinglists/


___________________________________________________________
Please keep all replies on the list by using "reply all"
in your mail client.  To manage your subscriptions to this
and other Galaxy lists, please use the interface at:
  https://lists.galaxyproject.org/

To search Galaxy mailing lists use the unified search at:
  http://galaxyproject.org/search/mailinglists/