diff --git a/app/code/Magento/Theme/Model/Design/Backend/File.php b/app/code/Magento/Theme/Model/Design/Backend/File.php
index 92380b70530f29eb30522f1d934da9633665fbd9..52e4b3a35e6004c62d018a8105a3a0df7ae1c7e5 100644
--- a/app/code/Magento/Theme/Model/Design/Backend/File.php
+++ b/app/code/Magento/Theme/Model/Design/Backend/File.php
@@ -111,7 +111,7 @@ class File extends BackendFile
     {
         $value = $this->getValue();
         if ($value && !is_array($value)) {
-            $fileName = $this->_getUploadDir() . '/' . $value;
+            $fileName = $this->_getUploadDir() . '/' . basename($value);
             $stat = $this->_mediaDirectory->stat($fileName);
             $this->setValue([
                 [
diff --git a/app/code/Magento/Theme/Model/Design/Config/Storage.php b/app/code/Magento/Theme/Model/Design/Config/Storage.php
index 76c2ec651639cb3833652fa3fe688e6876838a48..8857e79297fa0ae8c6dace9aa6d95bc987710ca1 100644
--- a/app/code/Magento/Theme/Model/Design/Config/Storage.php
+++ b/app/code/Magento/Theme/Model/Design/Config/Storage.php
@@ -78,6 +78,8 @@ class Storage
             $value = $this->valueProcessor->process(
                 $this->scopeConfig->getValue($fieldData->getPath(), $scope, $scopeId),
                 $fieldData->getPath(),
+                $scope,
+                $scopeId,
                 $fieldData->getFieldConfig()
             );
             if ($value !== null) {
diff --git a/app/code/Magento/Theme/Model/Design/Config/ValueChecker.php b/app/code/Magento/Theme/Model/Design/Config/ValueChecker.php
index 755173055bae104c307947000feedf01e2da6313..4c8c790fa42b201adb64720c983a524b31eaed7a 100644
--- a/app/code/Magento/Theme/Model/Design/Config/ValueChecker.php
+++ b/app/code/Magento/Theme/Model/Design/Config/ValueChecker.php
@@ -58,11 +58,15 @@ class ValueChecker
                 $this->valueProcessor->process(
                     $value,
                     $fieldConfig['path'],
+                    $scope,
+                    $scopeId,
                     $fieldConfig
                 ),
                 $this->valueProcessor->process(
                     $this->appConfig->getValue($fieldConfig['path'], $scope, $scopeId),
                     $fieldConfig['path'],
+                    $scope,
+                    $scopeId,
                     $fieldConfig
                 )
             );
diff --git a/app/code/Magento/Theme/Model/Design/Config/ValueProcessor.php b/app/code/Magento/Theme/Model/Design/Config/ValueProcessor.php
index 5c6b1edc1e52e160846d2501d3565198c01f50d3..77d027b87ec57e061f9df671cef78c477c07333d 100644
--- a/app/code/Magento/Theme/Model/Design/Config/ValueProcessor.php
+++ b/app/code/Magento/Theme/Model/Design/Config/ValueProcessor.php
@@ -28,16 +28,20 @@ class ValueProcessor
      *
      * @param string $value
      * @param string $path
+     * @param string $scope
+     * @param string $scopeId
      * @param array $fieldConfig
      * @return mixed
      */
-    public function process($value, $path, array $fieldConfig)
+    public function process($value, $path, $scope, $scopeId, array $fieldConfig)
     {
         $backendModel = $this->backendModelFactory->createByPath(
             $path,
             [
                 'value' => $value,
                 'field_config' => $fieldConfig,
+                'scope' => $scope,
+                'scope_id' => $scopeId
             ]
         );
         $backendModel->afterLoad();
diff --git a/app/code/Magento/Theme/Model/ResourceModel/Design/Config/Collection.php b/app/code/Magento/Theme/Model/ResourceModel/Design/Config/Collection.php
index 0bd41722b9cfa37635ef6e52c0b52a02c3c091a8..eeb73108d96e844f2366fedfaa34ca1d5bbe691d 100644
--- a/app/code/Magento/Theme/Model/ResourceModel/Design/Config/Collection.php
+++ b/app/code/Magento/Theme/Model/ResourceModel/Design/Config/Collection.php
@@ -73,7 +73,15 @@ class Collection extends ConfigCollection
     protected function _afterLoad()
     {
         foreach ($this->_items as $item) {
-            $item->setData('value', $this->valueProcessor->process($item->getData('value'), $item->getData('path')));
+            $item->setData(
+                'value',
+                $this->valueProcessor->process(
+                    $item->getData('value'),
+                    $this->getData('scope'),
+                    $this->getData('scope_id'),
+                    $item->getData('path')
+                )
+            );
         }
         parent::_afterLoad();
     }
diff --git a/app/code/Magento/Theme/Model/ResourceModel/Design/Config/Scope/Collection.php b/app/code/Magento/Theme/Model/ResourceModel/Design/Config/Scope/Collection.php
index 968ac48198106d03d03fa88da8489e3efaa691e6..ce7eda260fd5ffc7be4cc54bbd558acf9ce04d22 100644
--- a/app/code/Magento/Theme/Model/ResourceModel/Design/Config/Scope/Collection.php
+++ b/app/code/Magento/Theme/Model/ResourceModel/Design/Config/Scope/Collection.php
@@ -102,6 +102,8 @@ class Collection extends \Magento\Framework\Data\Collection
                 $result[$itemName] = $this->valueProcessor->process(
                     $this->appConfig->getValue($itemData['path'], $scope, $scopeId),
                     $itemData['path'],
+                    $scope,
+                    $scopeId,
                     $itemData
                 );
             }
diff --git a/app/code/Magento/Theme/Test/Unit/Model/Design/Backend/FileTest.php b/app/code/Magento/Theme/Test/Unit/Model/Design/Backend/FileTest.php
index 1c8f6225f81dfa792fab4f99a51c660f466fcb2d..c11b539f2b807953673046aa075a46398272c810 100644
--- a/app/code/Magento/Theme/Test/Unit/Model/Design/Backend/FileTest.php
+++ b/app/code/Magento/Theme/Test/Unit/Model/Design/Backend/FileTest.php
@@ -85,7 +85,7 @@ class FileTest extends \PHPUnit_Framework_TestCase
 
     public function testAfterLoad()
     {
-        $value = 'store/1/filename.jpg';
+        $value = '/filename.jpg';
         $this->fileBackend->setValue($value);
         $this->fileBackend->setFieldConfig(
             [
@@ -97,7 +97,7 @@ class FileTest extends \PHPUnit_Framework_TestCase
         );
         $this->mediaDirectory->expects($this->once())
             ->method('stat')
-            ->with('/' . $value)
+            ->with($value)
             ->willReturn(['size' => 234234]);
         $this->fileConfig->expects($this->once())
             ->method('getStoreMediaUrl')
@@ -106,7 +106,7 @@ class FileTest extends \PHPUnit_Framework_TestCase
         $this->assertEquals(
             [
                 [
-                    'url' => 'http://magento2.com/pub/media/' . $value,
+                    'url' => 'http://magento2.com/pub/media' . $value,
                     'file' => $value,
                     'size' => 234234,
                     'exists' => true,
diff --git a/app/code/Magento/Theme/Test/Unit/Model/Design/Config/StorageTest.php b/app/code/Magento/Theme/Test/Unit/Model/Design/Config/StorageTest.php
index 9e4b97ff5ca666af912f872f7a1a199b3eeb5e51..075e098462758ed19f5f906dd83680104f429402 100644
--- a/app/code/Magento/Theme/Test/Unit/Model/Design/Config/StorageTest.php
+++ b/app/code/Magento/Theme/Test/Unit/Model/Design/Config/StorageTest.php
@@ -184,7 +184,7 @@ class StorageTest extends \PHPUnit_Framework_TestCase
             ->willReturn('value');
         $this->valueProcessor->expects($this->once())
             ->method('process')
-            ->with('value', 'path', [])
+            ->with('value', 'path', 'website', 1, [])
             ->willReturnArgument(0);
         $this->designConfigData->expects($this->once())
             ->method('setValue')
diff --git a/app/code/Magento/Theme/Test/Unit/Model/Design/Config/ValueProcessorTest.php b/app/code/Magento/Theme/Test/Unit/Model/Design/Config/ValueProcessorTest.php
index 318016a7007522e772b443e06d22b49249a4c30c..19f3da24aca80a9a34b549a83a03ccc7282dce30 100644
--- a/app/code/Magento/Theme/Test/Unit/Model/Design/Config/ValueProcessorTest.php
+++ b/app/code/Magento/Theme/Test/Unit/Model/Design/Config/ValueProcessorTest.php
@@ -35,6 +35,8 @@ class ValueProcessorTest extends \PHPUnit_Framework_TestCase
     {
         $path = 'design/head/logo';
         $value = 'path/to/logo';
+        $scope = 'websites';
+        $scopeId = 1;
 
         $this->backendModelFactory->expects($this->once())
             ->method('createByPath')
@@ -43,6 +45,8 @@ class ValueProcessorTest extends \PHPUnit_Framework_TestCase
                 [
                     'value' => $value,
                     'field_config' => [],
+                    'scope' => $scope,
+                    'scope_id' => $scopeId
                 ]
             )
             ->willReturn($this->backendModel);
@@ -51,6 +55,6 @@ class ValueProcessorTest extends \PHPUnit_Framework_TestCase
         $this->backendModel->expects($this->once())
             ->method('getValue')
             ->willReturn($value);
-        $this->assertEquals($value, $this->valueProcessor->process($value, $path, []));
+        $this->assertEquals($value, $this->valueProcessor->process($value, $path, $scope, $scopeId, []));
     }
 }