我在 Apache 服务器后面运行两个服务:Jenkins(端口 8080)和 SonarQube(端口 9000)。
我的 apache 配置如下所示:
<VirtualHost *:80>
ServerName server
Redirect permanent / https://server.domain.com/
</VirtualHost>
<VirtualHost *:80>
ServerName server.domain.com
Redirect permanent / https://server.domain.com/
</VirtualHost>
<VirtualHost *:443>
ServerName server.domain.com
SSLEngine on
SSLCertificateFile /etc/ssl/certs/server.crt
SSLCertificateKeyFile /etc/ssl/private/server.key
ProxyPass /jenkins http://localhost:8080/jenkins nocanon
ProxyPassReverse /jenkins http://localhost:8080/jenkins
ProxyPassReverse /jenkins http://server.domain.com/jenkins
ProxyPassReverse /jenkins https://server.domain.com/jenkins
ProxyPass /sonar http://localhost:9000/sonar nocanon
ProxyPassReverse /sonar http://localhost:9000/sonar
AllowEncodedSlashes NoDecode
ProxyRequests Off
ProxyPreserveHost On
<Proxy http://localhost:8080/*>
Order deny,allow
Allow from all
</Proxy>
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
一切似乎都运行良好,除了 Jenkins 抱怨此消息:您的反向代理设置似乎已损坏。
当我运行Jenkins 提供的ReverseProxySetupMonitor测试时,错误消息表明反向代理设置不正确,因为它没有用 …
我正在尝试在我的 Web 服务器上安装Jenkins,这是一个在 Amazon EC2 实例上运行的 Ubuntu 13.10 服务器。我已经重新启动詹金斯使用
sudo /etc/init.d/jenkins restart
Run Code Online (Sandbox Code Playgroud)
当我检查我的进程时
ps aux | grep jenkins
Run Code Online (Sandbox Code Playgroud)
我可以看到多个项目正在运行,并具有以下描述:
jenkins 22356 0.0 0.0 20268 400 ? S 10:10 0:00 /usr/bin/daemon --name=jenkins --inherit --env=JENKINS_HOME=/var/lib/jenkins --output=/var/log/jenkins/jenkins.log --pidfile=/var/run/jenkins/jenkins.pid -- /usr/bin/java -jar /usr/share/jenkins/jenkins.war --webroot=/var/run/jenkins/war --httpPort=8080 --ajp13Port=-1 --httpListenAddress=127.0.0.1 --ajp13ListenAddress=127.0.0.1 --preferredClassLoader=java.net.URLClassLoader
jenkins 22358 5.9 5.7 1618372 97376 ? Sl 10:10 0:17 /usr/bin/java -jar /usr/share/jenkins/jenkins.war --webroot=/var/run/jenkins/war --httpPort=8080 --ajp13Port=-1 --httpListenAddress=127.0.0.1 --ajp13ListenAddress=127.0.0.1 --preferredClassLoader=java.net.URLClassLoader
Run Code Online (Sandbox Code Playgroud)
服务器不想让我访问这个安装,所以如果我访问
x.x.x.x:8080
Run Code Online (Sandbox Code Playgroud)
我只是收到一个“糟糕!谷歌浏览器无法连接”页面,甚至没有 HTTP 状态 404 / 500。
我尝试检查/var/log/jenkins/jenkins.log,但它并不表示任何问题。重启后的日志输出如下:
Running …Run Code Online (Sandbox Code Playgroud)