# the server directive is nginx's virtual host directive
server {
# port to listen on. Can also be set to an IP:PORT
listen 80;
# sets the domain[s] that this vhost server requests for
server_name www.somecompany.com;
location / {
proxy_pass http://sonarhost:sonarport;
}
}
3条答案
按热度按时间5rgfhyps1#
SonarQube使用反向代理支持HTTPS。以下是官方文档和链接:
要通过HTTPS运行SonarQube服务器,您必须构建标准的反向代理基础架构。必须将反向代理配置为设置值“X_FORWARDED_PROTO:https”。如果没有此属性,由SonarQube服务器发起的重定向将回退到HTTP。
使用Apache代理
我们假设您已经安装了带有mod_proxy模块的Apache 2,SonarQube正在运行并可用,并且您希望为www.public_sonar.com配置虚拟主机。此时,编辑www.public_ www.example.com虚拟主机的HTTPd配置文件sonar.com。包括以下内容以通过http://www.public_sonar.com/上的mod_proxy公开SonarQube:
使用Nginx
我们假设您已经安装了Nginx,您正在使用www.example.com的虚拟主机www.somecompany.com,并且SonarQube正在运行并可用。此时,编辑Nginx配置文件。包括以下内容以在http://www.somecompany.com/上公开SonarQube:
使用IIS
SonarQube建议使用反向代理来保护您的声纳安装。在IIS和URL重写模块的帮助下,这是一块蛋糕。
您需要的:
1.在一台机器上启用IIS(不一定是SonarQube机器,但我假设您在同一个系统上执行此操作)
第一步是创建一个IIS网站,它将充当反向代理。
除非您需要进行Kerberos身份验证,否则您无需在反向代理上配置任何形式的身份验证。如果您已在SonarQube上配置了Active Directory集成,则它应转发来自SonarQube的质询。
如果您使用的是Kerberos或IIS高级保护,请查看此处获取有关正确配置的指导。(https://blogs.technet.microsoft.com/latam/2015/06/24/kerberos-authentication-and-application-request-routing/)
配置绑定以使用SSL,并设置正确的主机名和证书。我使用安装在我机器上的IIS Express Development Certificate进行了一点欺骗:
接下来,我们将打开URL重写设置来配置反向代理:
单击添加规则以创建新规则:
然后从模板列表中选择“反向代理”:
输入目标服务器URL(可以是http://localhost:9000,甚至是远程服务器),然后单击“确定”创建规则:
你回到URL重写屏幕,我们需要添加一个额外的服务器变量,我们将与请求沿着发送到其他服务器,以便告诉SonarQube它实际上是在反向代理后面,为它做SSL卸载:
单击“添加...”以创建服务器变量:
添加服务器变量“X_FORWARDED_PROTO”,以允许重写模块操作此标头:
现在,您应该在变量列表中列出了变量。单击“返回到规则”以返回到规则列表:
编辑刚创建的URL重写规则:
展开规则定义的“服务器变量”部分:
添加您在上一步中允许的“X_FORWARDED_PROTO”头文件,并给予赋值“https”:
应用更改:
现在您应该能够通过SSL访问SonarQube。您可能需要将原始SonarQube示例配置为仅接受来自反向代理的流量,或者仅接受来自本地主机的流量通过Windows防火墙。
复制自:
USING IIS
Server setup documentation
lbsnaicq2#
对第2点的答复:在SonarQube上处理HTTPS的唯一方法是使用代理。查看documentation以了解更多信息。
对第3点的答复:不,没有计划回到战争。
pbpqsu0x3#
添加反向代理到docker compose。通过openssl创建证书。添加nginx配置完成