diff --git a/core/modules/image/image.module b/core/modules/image/image.module
index c763dc6..216e898 100644
--- a/core/modules/image/image.module
+++ b/core/modules/image/image.module
@@ -854,6 +854,7 @@ function image_style_flush($style) {
  */
 function image_style_url($style_name, $path) {
   $uri = image_style_path($style_name, $path);
+  $style = image_style_load($style_name);
 
   // If not using clean URLs, the image derivative callback is only available
   // with the script path. If the file does not exist, use url() to ensure
@@ -861,10 +862,10 @@ function image_style_url($style_name, $path) {
   // actual file path, this avoids bootstrapping PHP once the files are built.
   if ($GLOBALS['script_path'] && file_uri_scheme($uri) == 'public' && !file_exists($uri)) {
     $directory_path = file_stream_wrapper_get_instance_by_uri($uri)->getDirectoryPath();
-    return url($directory_path . '/' . file_uri_target($uri), array('absolute' => TRUE));
+    return url($directory_path . '/' . file_uri_target($uri), array('absolute' => TRUE, 'query' => array($style->changed => '')));
   }
 
-  return file_create_url($uri);
+  return file_create_url($uri) . '?' . $style->changed;
 }
 
 /**
@@ -1054,6 +1055,7 @@ function image_effect_save($style, &$effect) {
     $effect['ieid'] = $uuid->generate();
   }
   $style->effects[$effect['ieid']] = $effect;
+  $style->changed = REQUEST_TIME;
   $style->save();
 
   // Flush all derivatives that exist for this style, so they are regenerated
diff --git a/core/modules/image/lib/Drupal/image/Plugin/Core/Entity/ImageStyle.php b/core/modules/image/lib/Drupal/image/Plugin/Core/Entity/ImageStyle.php
index 363fbd8..51019d5 100644
--- a/core/modules/image/lib/Drupal/image/Plugin/Core/Entity/ImageStyle.php
+++ b/core/modules/image/lib/Drupal/image/Plugin/Core/Entity/ImageStyle.php
@@ -53,6 +53,13 @@ class ImageStyle extends ConfigEntityBase {
 
 
   /**
+   * The last changed timestamp.
+   *
+   * @var string
+   */
+  public $changed = 0;
+
+  /**
    * Overrides Drupal\Core\Entity\Entity::id().
    */
   public function id() {
diff --git a/core/modules/image/lib/Drupal/image/Tests/ImageDimensionsTest.php b/core/modules/image/lib/Drupal/image/Tests/ImageDimensionsTest.php
index e7552d2..5815a10 100644
--- a/core/modules/image/lib/Drupal/image/Tests/ImageDimensionsTest.php
+++ b/core/modules/image/lib/Drupal/image/Tests/ImageDimensionsTest.php
@@ -44,7 +44,6 @@ function testImageDimensions() {
     $style = entity_create('image_style', array('name' => 'test', 'label' => 'Test'));
     $style->save();
     $generated_uri = 'public://styles/test/public/'. drupal_basename($original_uri);
-    $url = image_style_url('test', $original_uri);
 
     $variables = array(
       'style_name' => 'test',
@@ -69,6 +68,7 @@ function testImageDimensions() {
     );
 
     image_effect_save($style, $effect);
+    $url = image_style_url('test', $original_uri);
     $img_tag = theme_image_style($variables);
     $this->assertEqual($img_tag, '<img class="image-style-test" src="' . $url . '" width="120" height="60" alt="" />');
     $this->assertFalse(file_exists($generated_uri), 'Generated file does not exist.');
@@ -90,6 +90,7 @@ function testImageDimensions() {
     );
 
     image_effect_save($style, $effect);
+    $url = image_style_url('test', $original_uri);
     $img_tag = theme_image_style($variables);
     $this->assertEqual($img_tag, '<img class="image-style-test" src="' . $url . '" width="60" height="120" alt="" />');
     $this->assertFalse(file_exists($generated_uri), 'Generated file does not exist.');
@@ -112,6 +113,7 @@ function testImageDimensions() {
     );
 
     image_effect_save($style, $effect);
+    $url = image_style_url('test', $original_uri);
     $img_tag = theme_image_style($variables);
     $this->assertEqual($img_tag, '<img class="image-style-test" src="' . $url . '" width="45" height="90" alt="" />');
     $this->assertFalse(file_exists($generated_uri), 'Generated file does not exist.');
@@ -134,6 +136,7 @@ function testImageDimensions() {
     );
 
     image_effect_save($style, $effect);
+    $url = image_style_url('test', $original_uri);
     $img_tag = theme_image_style($variables);
     $this->assertEqual($img_tag, '<img class="image-style-test" src="' . $url . '" width="45" height="90" alt="" />');
     $this->assertFalse(file_exists($generated_uri), 'Generated file does not exist.');
@@ -152,6 +155,7 @@ function testImageDimensions() {
     );
 
     image_effect_save($style, $effect);
+    $url = image_style_url('test', $original_uri);
     $img_tag = theme_image_style($variables);
     $this->assertEqual($img_tag, '<img class="image-style-test" src="' . $url . '" width="45" height="90" alt="" />');
     $this->assertFalse(file_exists($generated_uri), 'Generated file does not exist.');
@@ -173,6 +177,7 @@ function testImageDimensions() {
     );
 
     image_effect_save($style, $effect);
+    $url = image_style_url('test', $original_uri);
     $img_tag = theme_image_style($variables);
     $this->assertEqual($img_tag, '<img class="image-style-test" src="' . $url . '" alt="" />');
     $this->assertFalse(file_exists($generated_uri), 'Generated file does not exist.');
@@ -193,6 +198,7 @@ function testImageDimensions() {
     );
 
     image_effect_save($style, $effect);
+    $url = image_style_url('test', $original_uri);
     $img_tag = theme_image_style($variables);
     $this->assertEqual($img_tag, '<img class="image-style-test" src="' . $url . '" width="30" height="30" alt="" />');
     $this->assertFalse(file_exists($generated_uri), 'Generated file does not exist.');
@@ -214,6 +220,7 @@ function testImageDimensions() {
     );
 
     image_effect_save($style, $effect);
+    $url = image_style_url('test', $original_uri);
     $img_tag = theme_image_style($variables);
     $this->assertEqual($img_tag, '<img class="image-style-test" src="' . $url . '" alt="" />');
     $this->assertFalse(file_exists($generated_uri), 'Generated file does not exist.');
@@ -232,6 +239,7 @@ function testImageDimensions() {
     );
 
     image_effect_save($style, $effect);
+    $url = image_style_url('test', $original_uri);
     $img_tag = theme_image_style($variables);
     $this->assertEqual($img_tag, '<img class="image-style-test" src="' . $url . '" alt="" />');
   }
