RabbitMQ Management UI Not Rendering BUT /api IS working?

1,079 views
Skip to first unread message

Bryan Bush

unread,
May 11, 2016, 5:31:48 PM5/11/16
to rabbitmq-users
I'm having a weird issue with RabbitMQ's browser-based Management GUI.  I'm on CentOS 6.5 x86_64 with RabbitMQ 3.4.4, Erlang R14B04

The management plugin is enabled and works fine.  I can successfully make API calls to the server (like: curl -i -u user:pass  http://qaapp04:15672/api/nodes).  Firewall config is good (can make API calls from my workstation to the server, etc).

However, attempts to open http://qaapp04:15672 in a browser to use the GUI are met with an empty response.  Curl and wget complain equally:

user@workstation ~ $ curl http://qaapp04:15672
curl: (52) Empty reply from server

user@workstation ~ $ wget http://qaapp04:15672
--2016-05-11 17:22:51--  http://qaapp04:15672/
Resolving qaapp04 (qaapp04)... 192.168.202.26
Connecting to qaapp04 (qaapp04)|192.168.202.26|:15672... connected.
HTTP request sent, awaiting response... No data received.
Retrying.

Otherwise, RabbitMQ seeme to be functioning correctly.  Unfortunately I need to provide QA access to some form of GUI as part of their testing.

I've tried changing the port, but the new port exhibits the same issue.

Any help or add'l ideas would be appreciated.  Thanks!

Bryan





Michael Klishin

unread,
May 11, 2016, 9:20:24 PM5/11/16
to rabbitm...@googlegroups.com
Management UI is 100% built on the HTTP API.

You don't provide credentials to your curl and wget calls, or what server HTTP responses
are. I'd first sort out basic HTTP auth and then inspect HTTP traffic, then check any intermediaries
(e.g. proxies) that might be involved.

--
You received this message because you are subscribed to the Google Groups "rabbitmq-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rabbitmq-user...@googlegroups.com.
To post to this group, send email to rabbitm...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.



--
MK

Staff Software Engineer, Pivotal/RabbitMQ

Bryan Bush

unread,
May 12, 2016, 11:27:07 AM5/12/16
to rabbitmq-users
I actually did provide credentials to the /api calls as demonstrated below, but I'm not expecting to have to provide credentials to access the UI at / because with my other (working) installations I'm shown a login screen by the browser.  I'm not trying to use /api on the server that's not functioning correctly, but rather the browser GUI.  I could have probably made that clearer in my initial post.

There aren't any HTTP proxies involved, here.  

Working
bbush@datac00522 ~ $ curl -i http://devsandbox01:15672
HTTP/1.1 200 OK
Server: MochiWeb/1.0 (Any of you quaids got a smint?)
last-modified: Wed, 11 May 2016 15:50:05 GMT
Date: Thu, 12 May 2016 13:39:22 GMT
Content-Type: text/html
Content-Length: 1353

<html>
  <head>
    <title>RabbitMQ Management</title>
    <script src="js/ejs.min.js" type="text/javascript"></script>
    <script src="js/jquery-1.6.4.min.js" type="text/javascript"></script>
    <script src="js/jquery.flot.min.js" type="text/javascript"></script>
    <script src="js/jquery.flot.time.min.js" type="text/javascript"></script>
    <script src="js/sammy-0.6.0.min.js" type="text/javascript"></script>
    <script src="js/json2.js" type="text/javascript"></script>
    <script src="js/base64.js" type="text/javascript"></script>
    <script src="js/global.js" type="text/javascript"></script>
    <script src="js/main.js" type="text/javascript"></script>
    <script src="js/prefs.js" type="text/javascript"></script>
    <script src="js/help.js" type="text/javascript"></script>
    <script src="js/formatters.js" type="text/javascript"></script>
    <script src="js/charts.js" type="text/javascript"></script>

    <link href="css/main.css" rel="stylesheet" type="text/css"/>
    <link href="favicon.ico" rel="shortcut icon" type="image/x-icon"/>

<!--[if lte IE 8]>
    <script src="js/excanvas.min.js" type="text/javascript"></script>
    <link href="css/evil.css" rel="stylesheet" type="text/css"/>
<![endif]-->
  </head>
  <body>
    <div id="outer"></div>
    <div id="debug"></div>
    <div id="scratch"></div>
  </body>
</html>

Not Working
bbush@datac00522 ~ $ curl -i http://qaveapp04:15672
curl: (52) Empty reply from server

but yet...

bbush@datac00522 ~ $ curl -i http://qaveapp04:15672/mgmt/
HTTP/1.1 301 Moved Permanently
Server: MochiWeb/1.0 (Any of you quaids got a smint?)
Location: /
Date: Thu, 12 May 2016 15:22:52 GMT
Content-Length: 0

bbush@datac00522 ~ $ curl -i http://qaveapp04:15672/anything
HTTP/1.1 404 Object Not Found
Server: MochiWeb/1.0 (Any of you quaids got a smint?)
Date: Thu, 12 May 2016 15:24:47 GMT
Content-Type: text/plain
Content-Length: 10

It's like requests to / do not illicit a response at all from MochiWeb.

Michael Klishin

unread,
May 12, 2016, 12:24:40 PM5/12/16
to rabbitm...@googlegroups.com
Management UI will use /api/* endpoints. That's where it gets all the data from.

I'm afraid I don't understand what your goal (and expectations) is.

Bryan Bush

unread,
May 12, 2016, 12:52:35 PM5/12/16
to rabbitmq-users
My goal and expectation is that I be able to hit my installation at http://host:15672 and have the UI render in the browser where my QA user can authenticate and inspect queues, not get an empty response.

In the interest of time, I've moved on and reinstalled on another host and don't have this issue.  There's obviously something borked on the one in question.  I guess it'll remain a mystery as to why.
Message has been deleted

Michael Klishin

unread,
Jul 13, 2017, 11:13:51 AM7/13/17
to rabbitm...@googlegroups.com
t's not a networking issue

famous last words. A machine can accept remote TCP connections but drop all traffic
from particular sources.

Take a traffic dump, collect information from the Networking tab in your browser's developer tools and see.
Any claim without hard data is a guess and we are not huge fans of guesses on this list.

RabbitMQ HTTP API does not differentiate between "local"
and "remote" clients except for one thing: user "guest" can only authenticate from localhost


On Thu, Jul 13, 2017 at 5:36 PM, 'Todd M' via rabbitmq-users <rabbitm...@googlegroups.com> wrote:
I'm having the same problem, but even on multiple hosts. From the local machine, the http replies, but from remote machines it does not. However, the TCP connection establishes, so it's not a networking issue. It's like it's just completely ignoring remote hosts, but works for any other host.
To unsubscribe from this group and stop receiving emails from it, send an email to rabbitmq-users+unsubscribe@googlegroups.com.
To post to this group, send email to rabbitmq-users@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.
Reply all
Reply to author
Forward
0 new messages