Browse Source

fix(server side rendering): Fixed address used when rendering panel via phantomjs and using non default http_addr config, fixes #6660

Torkel Ödegaard 9 years ago
parent
commit
ea5cb0d076
3 changed files with 15 additions and 4 deletions
  1. 5 0
      CHANGELOG.md
  2. 6 1
      pkg/components/renderer/renderer.go
  3. 4 3
      pkg/setting/setting.go

+ 5 - 0
CHANGELOG.md

@@ -1,3 +1,8 @@
+# 4.0-stable (unrelased)
+
+### Bugfixes
+* **Server-side rendering**: Fixed address used when rendering panel via phantomjs and using non default http_addr config [#6660](https://github.com/grafana/grafana/issues/6660)
+
 # 4.0-beta2 (2016-11-21)
 
 ### Bugfixes

+ 6 - 1
pkg/components/renderer/renderer.go

@@ -35,7 +35,12 @@ func RenderToPng(params *RenderOpts) (string, error) {
 		executable = executable + ".exe"
 	}
 
-	url := fmt.Sprintf("%s://localhost:%s/%s", setting.Protocol, setting.HttpPort, params.Path)
+	localAddress := "localhost"
+	if setting.HttpAddr != setting.DEFAULT_HTTP_ADDR {
+		localAddress = setting.HttpAddr
+	}
+
+	url := fmt.Sprintf("%s://%s:%s/%s", setting.Protocol, localAddress, setting.HttpPort, params.Path)
 
 	binPath, _ := filepath.Abs(filepath.Join(setting.PhantomDir, executable))
 	scriptPath, _ := filepath.Abs(filepath.Join(setting.PhantomDir, "render.js"))

+ 4 - 3
pkg/setting/setting.go

@@ -24,8 +24,9 @@ import (
 type Scheme string
 
 const (
-	HTTP  Scheme = "http"
-	HTTPS Scheme = "https"
+	HTTP              Scheme = "http"
+	HTTPS             Scheme = "https"
+	DEFAULT_HTTP_ADDR string = "0.0.0.0"
 )
 
 const (
@@ -474,7 +475,7 @@ func NewConfigContext(args *CommandLineArgs) error {
 	}
 
 	Domain = server.Key("domain").MustString("localhost")
-	HttpAddr = server.Key("http_addr").MustString("0.0.0.0")
+	HttpAddr = server.Key("http_addr").MustString(DEFAULT_HTTP_ADDR)
 	HttpPort = server.Key("http_port").MustString("3000")
 	RouterLogging = server.Key("router_logging").MustBool(false)
 	EnableGzip = server.Key("enable_gzip").MustBool(false)