File Storage Locations

By default, Concrete CMS stores your File Manager uploads in the /application/files/ directory. If you'd like to keep them in a different, optional directory, you can set up an "Alternate" storage directory on your site. (Files can then be moved to the new location by clicking on their icon in the file manager and selecting "Permissions and Access".)


When you add a new storage location, the following settings are available:

  • name (required): name of the storage location
  • default location (required): whether or not this location should be used as the default for all new files
  • root path (required): the server path to the storage location
  • relative path: if set, this path is used to create direct paths to the files in this storage location relative to the web root. When this option is not set, the path to the files will be obfuscated and requests to the files will be processed by PHP rather than the web server. For example, assume the web root is /var/www/html and the alternate storage location can be /var/www/storage, and the relative path is left blank. When a file in this storage location is used, the path to the file visible to users will be /download_file/<number>/<number> rather than a direct path to the file. This means that all requests for files will go through PHP (which increases demand for CPU resources) as well as checked for permissions. This is an important trade-off if you want to prevent guest users from accessing files in the alternate storage location.

Screenshot from 2020-04-21 12-57-38.png