Hi Nate,
So I went ahead and set `static_enabled = False` in universe_wsgi.ini,
restarted uWSGI, and browsed to localhost. I'm including the results
of each step below:
After restarting uWSGI, the last few lines of uwsgi.log looked like this:
WSGI app 0 (mountpoint='') ready in 11 seconds on interpreter
0xa934c0 pid: 3561 (default app)
*** uWSGI is running in multiple interpreter mode ***
spawned uWSGI master process (pid: 3561)
spawned uWSGI worker 1 (pid: 3575, cores: 4)
spawned uWSGI worker 2 (pid: 3576, cores: 4)
spawned uWSGI worker 3 (pid: 3583, cores: 4)
spawned uWSGI worker 4 (pid: 3587, cores: 4)
spawned uWSGI worker 5 (pid: 3591, cores: 4)
spawned uWSGI worker 6 (pid: 3595, cores: 4)
spawned uWSGI worker 7 (pid: 3599, cores: 4)
spawned uWSGI worker 8 (pid: 3603, cores: 4)
spawned uWSGI worker 9 (pid: 3607, cores: 4)
spawned uWSGI worker 10 (pid: 3611, cores: 4)
*** Stats server enabled on 127.0.0.1:9191 fd: 30 ***
...so no traceback this time!
Then, browsing to localhost redirects to https://localhost and finally returns:
"Internal Server Error Galaxy was unable to successfully complete
your request An error occurred. This may be an intermittent problem
due to load or other
unpredictable factors, reloading the page may address the problem. The
error has been logged to our team."
That request was logged to uwsgi.log:
127.0.0.1 - - [03/Feb/2015:14:51:01 -0400] "GET / HTTP/1.1" 500 -
"-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:35.0) Gecko/20100101
Firefox/35.0"
Error - <type 'exceptions.KeyError'>: 'SCRIPT_NAME'
URL: https://localhost/
File 'lib/galaxy/web/framework/middleware/error.py', line 149 in __call__
app_iter = self.application(environ, sr_checker)
File '/home/galaxy/galaxy-dist/eggs/Paste-1.7.5.1-py2.7.egg/paste/recursive.py',
line 84 in __call__
return self.application(environ, start_response)
File '/home/galaxy/galaxy-dist/eggs/Paste-1.7.5.1-py2.7.egg/paste/httpexceptions.py',
line 633 in __call__
return self.application(environ, start_response)
File 'lib/galaxy/web/framework/base.py', line 132 in __call__
return self.handle_request( environ, start_response )
File 'lib/galaxy/web/framework/base.py', line 159 in handle_request
trans = self.transaction_factory( environ )
File 'lib/galaxy/web/framework/webapp.py', line 71 in <lambda>
self.set_transaction_factory( lambda e:
self.transaction_chooser( e, galaxy_app, session_cookie ) )
File 'lib/galaxy/web/framework/webapp.py', line 102 in transaction_chooser
return GalaxyWebTransaction( environ, galaxy_app, self, session_cookie )
File 'lib/galaxy/web/framework/webapp.py', line 207 in __init__
self._ensure_logged_in_user( environ, session_cookie )
File 'lib/galaxy/web/framework/webapp.py', line 441 in
_ensure_logged_in_user
if self.request.path.startswith( external_display_path ):
File 'lib/galaxy/web/framework/base.py', line 258 in __get__
value = self.func( obj )
File 'lib/galaxy/web/framework/base.py', line 341 in path
return self.environ['SCRIPT_NAME'] + self.environ['PATH_INFO']
KeyError: 'SCRIPT_NAME'
CGI Variables
-------------
DOCUMENT_ROOT: '/usr/share/nginx/html'
HTTP_ACCEPT:
'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8'
HTTP_ACCEPT_ENCODING: 'gzip, deflate'
HTTP_ACCEPT_LANGUAGE: 'en-US,en;q=0.5'
HTTP_CONNECTION: 'keep-alive'
HTTP_HOST: 'localhost'
HTTP_USER_AGENT: 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64;
rv:35.0) Gecko/20100101 Firefox/35.0'
PATH_INFO: '/'
REMOTE_ADDR: '127.0.0.1'
REMOTE_PORT: '50064'
REQUEST_METHOD: 'GET'
REQUEST_URI: '/'
SERVER_NAME: 'localhost'
SERVER_PORT: '443'
SERVER_PROTOCOL: 'HTTP/1.1'
UWSGI_SCHEME: 'https'
WSGI Variables
--------------
application: <paste.recursive.RecursiveMiddleware object at
0x7f2ec2f32290>
is_api_request: False
paste.cookies: (<SimpleCookie: >, '')
paste.expected_exceptions: [<class 'paste.httpexceptions.HTTPException'>]
paste.httpexceptions: <paste.httpexceptions.HTTPExceptionHandler
object at 0x7f2ec2f32210>
paste.recursive.forward: <paste.recursive.Forwarder from />
paste.recursive.include: <paste.recursive.Includer from />
paste.recursive.include_app_iter: <paste.recursive.IncluderAppIter from />
paste.recursive.script_name: ''
paste.throw_errors: True
request_id: 'fadecee2abdd11e4bfb614feb5e02dd6'
uwsgi.core: 0
uwsgi.node: 'i changed this string to hide the server name'
uwsgi.version: '2.0.9'
wsgi process: 'Multi process AND threads (?)'
wsgi.file_wrapper: <built-in function uwsgi_sendfile>
------------------------------------------------------------
[pid: 3607|app: 0|req: 1/1] 127.0.0.1 () {40 vars in 593 bytes}
[Tue Feb 3 14:51:01 2015] GET / => generated 777 bytes in 230 msecs
(HTTP/1.1 500) 1 headers in 63 bytes (1 switches on core 0)
I thought I would include some pieces of universe_wsgi.ini to help
with troubleshooting:
# ---- HTTP Server
----------------------------------------------------------
# Configuration of the internal HTTP server.
[server:main]
# The internal HTTP server to use. Currently only Paste is provided. This
# option is required.
use = egg:Paste#http
# The port on which to listen.
#port = 8080
# The address on which to listen. By default, only listen to
localhost (Galaxy
# will not be accessible over the network). Use '0.0.0.0' to listen on all
# available network interfaces.
host = 0.0.0.0
# Use a threadpool for the web server instead of creating a thread for each
# request.
use_threadpool = True
# Number of threads in the web server thread pool.
threadpool_workers = 10
# Set the number of seconds a thread can work before you should
kill it (assuming it will never finish) to 3 hours.
threadpool_kill_thread_limit = 10800
# ---- uwsgi ----------------------------------------------------------
[uwsgi]
processes = 10
stats = 127.0.0.1:9191
socket = 127.0.0.1:4001
pythonpath = lib
threads = 4
logto = /home/galaxy/galaxy-dist/uwsgi.log
master = True
Also, we are using a self-signed certificate as a temporary solution,
so not sure if that matters.
Thanks!
___________________________________________________________
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/