3

CentOS 6.3 上 RhodeCode 上的所有连接尝试都被拒绝,除了来自 localhost。

请注意,iptables它没有运行,我只是想访问 Web 界面。

我已经在下面搜索了确切的错误消息并环顾四周。我还没有找到解决方案。

abort: error: No connection could be made because the target machine actively refused it

如果防火墙关闭,并且我没有尝试修改任何存储库,还有什么阻止我连接?编辑:见下面的#5。不知道如何解决它。

尝试过的事情和其他信息

  1. 使用 localhost、127.0.0.1 和主机名production.ini
  2. service iptables stop
  3. 通过 HTTP 成功连接。换句话说,在 RhodeCode 之外接受连接。
  4. 确保没有启用或配置身份验证方法production.ini
  5. 尽管服务器接受 localhost 上的连接,netstat -l但并未显示端口 5000 正在侦听。设置端口 5000production.inips uax | grep paster确认服务器正在运行。没有其他软件试图抢占 5000 端口。
4

1 回答 1

3

好的,显然我误解了host配置。我的运行假设host应该设置为127.0.0.1localhost在 production.ini 中,以便 RhodeCode 知道要寻找另一个服务的主机。这是我的错误假设,因为我习惯于将 Web 应用程序指向本地系统以查找数据库。

事实证明,host将应用程序绑定到特定地址以进行访问,这意味着 RhodeCode 应该只响应本地请求,而不管其他系统策略怎么说。设置文档没有说明这一点,因为它没有指定外部连接将被拒绝。它只说:

这个命令 [paster serve] 运行 RhodeCode 服务器。Web 应用程序应在 127.0.0.1:5000 可用。此 ip 和端口可通过上一步中创建的 production.ini 文件进行配置

该问题已通过将 RhodeCode 绑定到 来解决0.0.0.0,这会将其打开到外部连接。感谢 Łukasz Balcerzak在 RC 支持 google 小组中指出这一点。

于 2012-11-22T05:26:53.180 回答