Browse Source

Remove debug warnings; Update docs

DarthSim 5 years ago
parent
commit
56f69c193c
4 changed files with 8 additions and 6 deletions
  1. 1 0
      CHANGELOG.md
  2. 3 3
      config.go
  3. 4 1
      docs/configuration.md
  4. 0 2
      processing_options.go

+ 1 - 0
CHANGELOG.md

@@ -4,6 +4,7 @@
 ### Added
 - `IMGPROXY_LOG_LEVEL` config.
 - `max_bytes` processing option.
+- `IMGPROXY_ALLOWED_SOURCES` config.
 
 ### Changed
 - Docker image base is changed to Debian 10 for better stability and performance.

+ 3 - 3
config.go

@@ -132,8 +132,7 @@ func sourceEnvConfig(allowedsources *[]string, name string) {
 	sources := []string{}
 	if env := os.Getenv(name); len(env) > 0 {
 		for _, source := range strings.Split(env, ",") {
-			logWarning("source: %s", source)
-			sources = append(sources, fmt.Sprintf("%s://", source))
+			sources = append(sources, fmt.Sprintf("%s://", strings.TrimSpace(source)))
 		}
 	}
 	*allowedsources = sources
@@ -287,6 +286,8 @@ func configure() {
 	}
 	intEnvConfig(&conf.MaxAnimationFrames, "IMGPROXY_MAX_ANIMATION_FRAMES")
 
+	sourceEnvConfig(&conf.AllowedSources, "IMGPROXY_ALLOWED_SOURCES")
+
 	boolEnvConfig(&conf.JpegProgressive, "IMGPROXY_JPEG_PROGRESSIVE")
 	boolEnvConfig(&conf.PngInterlaced, "IMGPROXY_PNG_INTERLACED")
 	boolEnvConfig(&conf.PngQuantize, "IMGPROXY_PNG_QUANTIZE")
@@ -318,7 +319,6 @@ func configure() {
 	boolEnvConfig(&conf.DevelopmentErrorsMode, "IMGPROXY_DEVELOPMENT_ERRORS_MODE")
 
 	strEnvConfig(&conf.LocalFileSystemRoot, "IMGPROXY_LOCAL_FILESYSTEM_ROOT")
-	sourceEnvConfig(&conf.AllowedSources, "IMGPROXY_ALLOWED_SOURCES")
 
 	boolEnvConfig(&conf.S3Enabled, "IMGPROXY_USE_S3")
 	strEnvConfig(&conf.S3Region, "IMGPROXY_S3_REGION")

+ 4 - 1
docs/configuration.md

@@ -63,6 +63,10 @@ When you use imgproxy in a development environment, it can be useful to ignore S
 
 * `IMGPROXY_IGNORE_SSL_VERIFICATION`: when true, disables SSL verification, so imgproxy can be used in a development environment with self-signed SSL certificates.
 
+You can limit allowed protocols of the source URLs:
+
+* `IMGPROXY_ALLOWED_SOURCES`: when set, limits allowed source URL protocols. Example: `https,s3,local`. Default: blank.
+
 Also you may want imgproxy to respond with the same error message that it writes to the log:
 
 * `IMGPROXY_DEVELOPMENT_ERRORS_MODE`: when true, imgproxy will respond with detailed error messages. Not recommended for production because some errors may contain stack trace.
@@ -166,7 +170,6 @@ imgproxy can be switched into "presets-only mode". In this mode, imgproxy accept
 imgproxy can serve your local images, but this feature is disabled by default. To enable it, specify your local filesystem root:
 
 * `IMGPROXY_LOCAL_FILESYSTEM_ROOT`: the root of the local filesystem. Keep empty to disable serving of local files.
-* `IMGPROXY_ONLY_LOCAL_FILESYSTEM`: when true only allows images to be served from the local filesytem. Default: false;
 
 Check out the [Serving local files](serving_local_files.md) guide to learn more.
 

+ 0 - 2
processing_options.go

@@ -795,11 +795,9 @@ func applyProcessingOptions(po *processingOptions, options urlOptions) error {
 func isAllowedSource(imageURL string) bool {
 	logWarning("URL: %s", imageURL)
 	if len(conf.AllowedSources) == 0 {
-		logWarning("No sources set")
 		return true
 	}
 	for _, val := range conf.AllowedSources {
-		logWarning("Allowed Source: %s", string(val))
 		if strings.HasPrefix(imageURL, string(val)) {
 			return true
 		}