Why is there private_html in my [cms.root] directory variable and is it trouble?
It starts with a peculiarity of DirectAdmin. Using a subdomain, you have to upload the files for https connection to private_html and the files for not secure http connection to public_html. For the situation these files are the same DirectAdmin offers the option to create a  symbolic link from private_html to public_html. Thus when you ask for https://&lt;domain&gt;/file.html it looks for the file /private_html/file.html and thanks to the link this is the same as public_html/file.html.

The [cms.root] variabele is not set. It is derived from the DRUPAL_ROOT constant, that is calculated with getcwd(). At the moment you use a secure connection this functions returns the private_html directory.

And it causes trouble.

The directory variable  [cms.root] is used to calculate the URL variabele [civicrm.root] so this is also wrong. The effect is that a lot of javascript files are not found, for example ckeditor.js.

My solution is adding the [cms.root] directly to the civicrm.settings.php file with the following line:

$civicrm_paths['cms.root']['path'] = '/home/&lt;user&gt;/domains/&lt;subdomain&gt;/public_html/crm';