SonarQube 服务器 运行 但无法访问并显示 404 not found

SonarQube server is running but not reachable and saying 404 not found

我是 运行 windows 10,在 vagrant 的帮助下安装了 virtual box 以使用 ubuntu,所以我终于有了 ubuntu 14.04 运行 windows

上的流浪汉

我已经按照here

安装了SonarQube

所以声纳立方体安装在 ubuntu 的 /opt/sonar/bin/linux-x86-64/ 并且 运行 当我检查如下

时它很好

(env) vagrant@vagrant-ubuntu-trusty-64:~/Work/sonar$ sudo /opt/sonar/bin/linux-x86-64/sonar.sh status
SonarQube is running (7705).

我的声纳属性文件(/opt/sonar/conf/sonar.properties)包含以下设置

sonar.jdbc.username=sonar
sonar.jdbc.password=sonar
sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance
sonar.web.host=127.0.0.1
sonar.web.context=/sonar
sonar.web.port=9002

现在,当我尝试如下访问它时,它说 404 not found

(env) vagrant@vagrant-ubuntu-trusty-64:~/Work/sonar$ wget http://127.0.0.1:9002
--2017-07-31 08:07:32--  http://127.0.0.1:9002/sonar
Connecting to 127.0.0.1:9002... connected.
HTTP request sent, awaiting response... 404 Not Found
2017-07-31 08:07:32 ERROR 404: Not Found.

所以任何人都可以让我知道使用 link http://127.0.0.1:9002/sonar 无法访问声纳服务器的可能原因是什么以及需要进行哪些更改或者我在 sonar.properties 文件 ?,

仅供参考,我使用 wget http://127.0.0.1:9002/sonar 而不是在浏览器中输入 url 是因为我 运行 ubuntu 在 windows 中使用流浪者 i需要进行端口转发等,这是额外的工作,所以暂时我像上面那样访问它

我找到的解决上述问题的办法就是注释下面的选项并重启声纳服务器

#sonar.web.host=127.0.0.1
#sonar.web.context=/sonar

如果您在 vagrant VM 上安装声纳,您可以执行以下操作:

  1. 为您的虚拟机使用静态 IP,在您的 Vagrantfile 中添加类似

    的内容
    Vagrant.configure("2") do |config|
      config.vm.network "private_network", ip: "192.168.50.4"
    end
    
  2. 您可以在声纳属性文件中引用此 IP

    sonar.web.host=192.168.50.4
    
  3. 您将可以使用此 IP 访问服务器。 (http://192.168.50.4:9002 在你的情况下 /sonar 或不取决于你是否使用 sonar.web.context 属性)

另一种选择是使用特殊地址 0.0.0.0,以便它绑定到所有网络接口。在这种情况下,您并不特别需要 VM 的静态 IP,您可以使用端口转发使用 127.0.0.1 地址。