Answers.Body: <p>If you're able to modify your php.ini's <a href="https://www.php.net/manual/en/ini.core.php#ini.open-basedir" rel="nofollow noreferrer">open_basedir</a> setting, the simplest solution would be to add <code>/var/www/clients/client0/web7/.composer</code> as an allowed path to it so PHP can write to it.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2021-11-15T17:09:25.797Z
Answers.LastActivityDate: 2021-11-15T17:09:25.797Z
Answers.UserDisplayName: Brad Bell
Body: <p>I have ISP Config host virtual website which is a system tool to host many websites. <strong>Document root</strong> path '/' is not writable. I have an <strong>/private</strong>, which is writable. I used alias <strong>@root</strong> as <strong>/private</strong>, and I set in index.php this path as CRAFT_BASE_PATH. When I try to install plugins I have the following error:</p>
  <pre><code>Error: is_dir(): open_basedir restriction in effect. File(/var/www/clients/client0/web7/.composer/cache) is not within the allowed path(s):
  The web7/.composer is not writable 
  </code></pre>
  <p>How to fix this issue and let CraftCMS create <strong>temporary</strong> .composer/cache folder in <strong>@root alias</strong> path (/private folder), instead of the default <strong>DOCUMENT ROOT</strong> path?</p>
  <p>The website public is in /web folder, for backend (not publicly shared) is in /private in ISP Config, and DOC_ROOT (/) is not writable.</p>
  
Tags: <structure><install><server><installation><composer>
Title: Child (inner) Path of backend in Virtual Host is possible?
ThreadText: # Child (inner) Path of backend in Virtual Host is possible?
  
  (Asked by: username_0 on 2021-11-11)
  
  I have ISP Config host virtual website which is a system tool to host many websites. **Document root** path '/' is not writable. I have an **/private**, which is writable. I used alias **@root** as **/private**, and I set in index.php this path as CRAFT\_BASE\_PATH. When I try to install plugins I have the following error:
  
  ```
  Error: is_dir(): open_basedir restriction in effect. File(/var/www/clients/client0/web7/.composer/cache) is not within the allowed path(s):
  The web7/.composer is not writable 
  
  ```
  
  How to fix this issue and let CraftCMS create **temporary** .composer/cache folder in **@root alias** path (/private folder), instead of the default **DOCUMENT ROOT** path?
  
  The website public is in /web folder, for backend (not publicly shared) is in /private in ISP Config, and DOC\_ROOT (/) is not writable.
  
  **Tags:** structure, install, server, installation, composer
  
  
  ---
  
  ## 1 answers
  
  ### Answer by username_1 on 2021-11-15. Score: 1
  
  If you're able to modify your php.ini's [open\_basedir](https://www.php.net/manual/en/ini.core.php#ini.open-basedir) setting, the simplest solution would be to add `/var/www/clients/client0/web7/.composer` as an allowed path to it so PHP can write to it.
  
  
  ---
  
  