Auto-Detection of Project Type and Web Root
Type, web root, database and Drush, worked out for you
What Opensolr works out for you
When a project's code arrives, Opensolr looks at it and sets what the website needs: its type, the folder Apache publishes, and Drush for Drupal. Most projects work without extra settings, and you can change each one.
01 · Project type
| Type | Recognised by |
|---|---|
| Drupal | Drupal's core folder (also under web/), a sites/default folder (also under web/ or docroot/), or drupal/core in composer.json. |
| Laravel | laravel/framework in composer.json, or an artisan file. |
| WordPress | A wp-config.php file or a wp-content folder. |
| Generic PHP | Anything else. |
The detected type picks the virtual host template used when the project is created. The type on the project page is the one you chose; change it in Edit Settings › Project Type. A Drupal type also brings the Drupal tools.
02 · Web root
The web root is the folder Apache publishes. Opensolr takes the first of these that is set:
- The Document Root Suffix you type in Create VHost, for example
/web. - The Web Root saved in Edit Settings, for example
public. web/for a Drupal project,public/for a Laravel project, when the folder exists.- The project folder itself.
Changing Web Root in Edit Settings edits only the document root lines of the existing virtual host; the rest of the file stays as it is.
03 · Database for backups
Backups save the project's Main Database, the one you choose when you add the project or in Edit Settings. When none is set, Opensolr looks for the database name in a Drupal site's sites/default settings files at the project root. If it finds none, a Files & Database backup saves only the files, and a Database Only backup is refused.
04 · Drush
For Drupal, Opensolr uses the project's own Drush (vendor/bin/drush, installed with Composer) or else one installed on the server. The Drupal section of the project appears only when Drush works.
05 · The server itself
Scan Server (later Re-scan) on the Overview tab reads the versions of the OS, PHP, Apache, MySQL, Composer and Node.js, and whether Memcached runs.