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 上安装声纳,您可以执行以下操作:
为您的虚拟机使用静态 IP,在您的 Vagrantfile 中添加类似
的内容
Vagrant.configure("2") do |config|
config.vm.network "private_network", ip: "192.168.50.4"
end
您可以在声纳属性文件中引用此 IP
sonar.web.host=192.168.50.4
您将可以使用此 IP 访问服务器。 (http://192.168.50.4:9002 在你的情况下 /sonar
或不取决于你是否使用 sonar.web.context
属性)
另一种选择是使用特殊地址 0.0.0.0
,以便它绑定到所有网络接口。在这种情况下,您并不特别需要 VM 的静态 IP,您可以使用端口转发使用 127.0.0.1
地址。
我是 运行 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 上安装声纳,您可以执行以下操作:
为您的虚拟机使用静态 IP,在您的 Vagrantfile 中添加类似
的内容Vagrant.configure("2") do |config| config.vm.network "private_network", ip: "192.168.50.4" end
您可以在声纳属性文件中引用此 IP
sonar.web.host=192.168.50.4
您将可以使用此 IP 访问服务器。 (http://192.168.50.4:9002 在你的情况下
/sonar
或不取决于你是否使用sonar.web.context
属性)
另一种选择是使用特殊地址 0.0.0.0
,以便它绑定到所有网络接口。在这种情况下,您并不特别需要 VM 的静态 IP,您可以使用端口转发使用 127.0.0.1
地址。