首页 > 解决方案 > RabbitMQ 管理 - 加载队列或交换时出现 404

问题描述

我已通过 Google Cloud Platform 的市场将 RabbitMQ 安装到我的 Kubernetes 集群中。

我可以在 Kubernetes 集群中托管的其他应用程序中很好地连接到它,我可以创建队列并从中设置消费者,也没有任何问题。

我可以临时端口转发端口 15672,以便我可以从我的机器访问管理用户界面。我可以正常登录,并且在访问他们的页面时会得到队列和交换的列表。但是,一旦我选择了一个队列或交换器来加载该特定项目,我就会收到 404 响应和以下消息。尝试添加新队列时,我得到了相同的结果。

Not found
The object you clicked on was not found; it may have been deleted on the server.

它们肯定存在,因为当我回到列表页面时,它们就在那里。这真的很令人沮丧,因为通过简单地使用 RabbitMQ 管理将消息发布到队列来测试我的微服务会很好,但我目前被阻止这样做!

任何帮助将不胜感激,谢谢!

编辑
为清晰起见提供的屏幕截图(单击列表中的队列后): rabbitmq 管理员

如果我尝试添加新队列,我不会收到该消息,而是收到 405。

标签: kubernetesgoogle-cloud-platformrabbitmqgoogle-kubernetes-engine

解决方案


今天早上我遇到了和你一样的问题,我用下面的配置解决了这个问题:

server {
    listen 80;
    server_name rabbitmq.o2c.ovh;
    access_log acces.log;
    error_log error.log;
    location / {
        client_body_buffer_size 128k;
        proxy_send_timeout   90;
        proxy_read_timeout   90;
        proxy_buffer_size    4k;
        proxy_buffers     16 32k;
        proxy_busy_buffers_size 64k;
        proxy_temp_file_write_size 64k;
        proxy_connect_timeout 30s;
        proxy_pass   http://localhost:15672;
        proxy_set_header   Host   $host;
        proxy_set_header   X-Real-IP  $remote_addr;
        proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

推荐阅读