Drupal
This page explains the Drupal one-click installer in GoAdmio. It lets you install a complete Drupal site on a domain in a single step — no manual file upload, no database setup, no configuration.
Location: Admin Panel → Scripts → Drupal
Location (User Panel): Scripts → Drupal (if enabled for the account)
Overview
Drupal is a free, open-source content management system (CMS) known for its flexibility, scalability, and strong security. It powers government sites, enterprise portals, universities, and high-traffic publications.
GoAdmio's one-click installer handles the entire setup:
- Downloads the latest Drupal release
- Creates the database and database user
- Configures Drupal's
settings.phpwith the correct credentials - Installs Drupal in the chosen directory
- Runs the installation wizard (site name, admin user, admin password)
> Note: The one-click installer is for new installations. For migrating an existing Drupal site, use Backup Wizard or restore from a Drupal backup. For changing an existing Drupal admin password, use the Drupal admin or Drush — see Terminal.
What the Page Shows
| Field | Description |
|---|---|
| Domain | The domain to install Drupal on (e.g., example.com) |
| Directory | The installation path (e.g., /home/example.com/www) |
| Version | The Drupal version to install (e.g., Latest Version) |
| Database Name | The database to use — prefixed with the account username |
| Database Username | The database user — prefixed with the account username |
| Database Password | The password for the database user — you must enter a new password |
| Install | Run the installation |
> Important: The Database Password field does not auto-generate. You must enter a new password for the new database. Choose a strong password and store it securely — you will need it if you ever manage the database directly.
Prerequisites
Before installing Drupal:
- A domain is set up on the account — see Create New Account or Addon Domains.
- DNS points to the server — the domain resolves to the GoAdmio server. See DNS Manager and Track DNS.
- The document root exists — usually
www/<domain>— see Change Document Root. - The domain is not suspended — see Suspend Account.
- The account has disk space and database limits — see Show Accounts Over Quota and Add/Modify Packages.
- PHP and MySQL are running — see Service Status.
- PHP version is compatible — Drupal 10+ requires PHP 8.1 or later. See MultiPHP Manager.
How to Install Drupal
Step 1 — Open the installer
- Log in to the GoAdmio Admin Panel (or User Panel).
- Navigate to Scripts → Drupal.
Step 2 — Select the domain
- Choose the Domain from the dropdown.
- The Directory field auto-fills with the account's document root.
- Adjust the directory if you want Drupal in a subdirectory (e.g.,
/home/example.com/www/drupal).
Step 3 — Choose the version
- Select the Version — usually Latest Version.
- If other versions are available, choose the one you need.
Step 4 — Configure the database
- The Database Name and Database Username are pre-filled with the account's username prefix.
- Add a suffix if you want a specific name (e.g.,
drupal), or leave the default. - Enter a new password in the Database Password field.
> Warning: The database password is not auto-generated. If you leave it blank or use a weak password, the database is at risk. Use a strong password and save it immediately.
Step 5 — Install
- Click Install.
- GoAdmio downloads Drupal, creates the database, configures
settings.php, and installs the files. - The installation may take a minute or two.
- When complete, GoAdmio shows the Drupal installation wizard or a link to it.
Step 6 — Complete the Drupal setup
- Open the installation wizard at
https://<domain>/core/install.php(or the URL shown). - Choose the installation profile (Standard, Minimal, or Umami demo).
- Choose the language.
- Verify the requirements (Drupal checks PHP version, extensions, and file permissions).
- Configure the database (usually pre-filled by the installer).
- Fill in:
- Click Save and continue.
- Log in at
https://<domain>/user/loginwith the credentials you set.
What the Installer Creates
| Item | Created? | Notes |
|---|---|---|
| Drupal files | ✅ Yes | In the chosen directory |
| Database | ✅ Yes | With the account's username prefix |
| Database user | ✅ Yes | With the account's username prefix |
| settings.php | ✅ Yes | With the database credentials |
| Drupal admin user | ⚠️ Via the wizard | You set it in step 6 |
| Site name | ⚠️ Via the wizard | You set it in step 6 |
| SSL certificate | ❌ No | Install separately — see Install Free SSL Certificate |
| Caching | ❌ No | Drupal has built-in caching — enable it in Configuration → Performance |
| Security module | ❌ No | Recommended: Security Kit, Honeypot |
> Note: The installer creates a working site, but a production Drupal site also benefits from:
> - SSL — see Install Free SSL Certificate
> - Caching — Drupal's built-in cache, or Redis/Memcached
> - Security modules — for hardening
> - Backups — see Backup Wizard
After Installing
| Task | Why |
|---|---|
| Complete the Drupal wizard | Set site name, admin user, and admin email |
| Log in to /user/login | Confirm the site works |
| Install an SSL certificate | HTTPS is essential — see Install Free SSL Certificate |
| Redirect HTTP to HTTPS | See Redirect HTTP to HTTPS |
| Enable Drupal caching | Configuration → Performance |
| Install a security module | Harden the site against attacks |
| Set up backups | Drupal sites need regular backups — see Backup Wizard |
| Update Drupal core and modules | Security and performance |
| Configure clean URLs | SEO-friendly URLs — enabled by default on most setups |
| Review file permissions | See Fix Permissions |
> Warning: Drupal's settings.php contains the database credentials. Ensure it is not publicly readable — its default permissions should be 444 or 440. See Fix Permissions.
Common Scenarios
"The installation succeeded but the site does not load"
- Check DNS — does the domain resolve to the server? See Track DNS.
- Check the document root — is Drupal in the right directory? See File Manager.
- Check the web server — is it running? See Service Status.
- Check the SSL certificate — if HTTPS is enforced but no certificate, the site will not load.
"The installation fails with a database error"
- Check the database password — it must be filled in.
- Check the database limit — the account may have reached its database quota. See Add/Modify Packages.
- Check MySQL — is it running? See Service Status.
- Check disk space — the account may be over quota. See Show Accounts Over Quota.
"Drupal says 'requirements problem'"
Drupal checks for required PHP extensions and file permissions. Common issues:
| Issue | Solution |
|---|---|
| Missing PHP extension (e.g., gd, pdo, mbstring) | Install via Install PHP Modules |
| PHP version too old | Set PHP 8.1+ via MultiPHP Manager |
| File permissions | Drupal's sites/default/files must be writable — see Fix Permissions |
| settings.php not writable | The installer needs to write it — check permissions |
> Tip: Drupal lists exactly which requirements are not met on the requirements page. Address each one — do not ignore them.
"I want Drupal in a subdirectory (e.g., /drupal)"
- In the Directory field, append
/drupalto the document root. - Complete the installation.
- The site is now at
https://example.com/drupal/.
"The customer's Drupal site was compromised"
- Reset the Drupal admin password via the Drupal admin or Drush.
- Review the Drupal users list for unauthorized admins.
- Scan for malware — see ClamAV Antivirus.
- Update Drupal core, modules, and themes — the most common compromise vector.
- Check
settings.phpand other config files for injected code. - Review logs — see FTP Logs and Apache Status.
- Consider restoring from a clean backup — see Restore Full Backup.
Security Recommendations
| Practice | Why |
|---|---|
| Use a strong admin username | admin is the most targeted username |
| Use a strong admin password | Admin accounts are brute-force targets |
| Enable Drupal's built-in 2FA | Drupal 10+ includes 2FA modules |
| Keep Drupal updated | Outdated versions are the top compromise vector |
| Keep modules and themes updated | Same reason |
| Remove unused modules and themes | Every module is a potential vulnerability |
| Use a security module | Security Kit, Honeypot, etc. |
| Install SSL | HTTPS protects login credentials |
| Back up regularly | Drupal sites are frequent targets — see Backup Wizard |
| Limit admin users | Fewer admins means fewer targets |
| Use file permissions | See Fix Permissions |
| Enable Drupal's cache | Performance and reduced load |
> Warning: A newly installed Drupal site is not automatically secure. Default settings, the admin username, and outdated modules are common compromise vectors. Follow the recommendations above to harden the site.
Related Commands
| Command | Purpose |
|---|---|
| drush | Drupal command-line tool (if installed) |
| /go/conf | Rebuild web server config |
| /go/ssl domain.com | Install SSL for the site |
| /go/repair | Repair the Drupal database if needed |
See Command Reference for the full CLI list.
Related Pages
- Scripts — other one-click installers (WordPress, Joomla, etc.)
- MySQL Databases — manage the Drupal database
- Install Free SSL Certificate — HTTPS for the site
- Redirect HTTP to HTTPS — force HTTPS
- File Manager — inspect Drupal files
- Backup Wizard — back up the site
- ClamAV Antivirus — scan for malware
- Cache Website — full-page caching for performance
- MultiPHP Manager — PHP version for the site
- Install PHP Modules — required Drupal extensions
- PHP Disable Functions — restrict dangerous functions
- Fix Permissions — repair file ownership
- Change Document Root — if Drupal is in a subdirectory
Troubleshooting
| Problem | Likely cause | Solution |
|---|---|---|
| Installation fails with "database error" | Wrong password, database limit reached, or MySQL down | Verify the password; check limits; check Service Status |
| Site does not load after install | DNS not pointing to the server, or wrong document root | Check Track DNS; verify the directory |
| "Requirements problem" | Missing PHP extension, old PHP version, or file permissions | Install extensions; set PHP 8.1+; fix permissions |
| Drupal wizard does not appear | Installation incomplete, or wrong URL | Check the install log; try https://domain/core/install.php |
| Cannot log in to /user/login | Wrong credentials, or the user was not created | Reset the password via Drush or the database |
| Site shows a blank page | PHP error suppressed | Enable display_errors temporarily in PHP Configuration; check the error log |
| "settings.php is not writable" | File permissions too restrictive | Change permissions to 444 or 440 after installation; see Fix Permissions |
| Modules cannot be installed | File permissions, or PHP memory limit | Check Fix Permissions and PHP Configuration |
| Site is slow | No caching, or PHP version too old | Enable Drupal cache; use PHP 8.1+ — see MultiPHP Manager |
| Drupal is in the wrong directory | Installation path was set incorrectly | Delete and reinstall in the correct directory |
Best Practices
| Practice | Why |
|---|---|
| Use the latest Drupal version | Security and performance |
| Install SSL immediately | Protect login credentials |
| Use a non-default admin username | admin is the most targeted |
| Use a strong admin password | Brute-force protection |
| Enable Drupal's 2FA | Adds a layer beyond the password |
| Install a security module | Harden the site |
| Enable Drupal caching | Improve performance |
| Set up regular backups | Drupal sites are frequent targets |
| Keep everything updated | Outdated modules are the top compromise vector |
| Remove unused modules and themes | Every module is a potential vulnerability |
| Configure clean URLs early | Changing them later breaks existing links |
| Store the database password securely | You will need it for direct database access |
| Monitor the site | Use a security module or external monitoring |
| Use a child theme for customizations | Prevents theme updates from overwriting changes |
Last updated: 2026-11-08