Sorry in advance for a detailed post. It took me 5 days to actually install SuiteCRM to the point that I could actually reach the installation screen. Now I’ve been trying to log in for 2 days. I believe this is a common issue from what I have seen here.
I am not technical, so unfortunately have been relying on AI assistants to provide CLI commands based on publicly available SuiteCRM advice, forums, and guides. I am at a loss and am turning this community for help. A clean install is definitely an option, although considering how painful it was to get the system working in the first place, I might just have to give up on SuiteCRM.
Summary of problems encountered:
-
Fresh install shows “Login credentials incorrect” immediately; suitecrm.log contains “[FATAL] Temp Useris not retrieved … boolean given”.
-
Common causes found and attempted fixes:
-
File/dir permissions wrong (many files owned by root). Fixed with chown -R www-data:www-dataand chmod 775 on cache/var/etc.
-
Admin password resets via CLI (suitecrm:admin:reset-password) failed because bin/consolemissing on this package; fallback manual SQL hash update used.
-
Missing/incorrect DB manager: logs showed “unable to load DB manager for: mysqli”. config.php’sdb_manager needed forcing to MysqliManager and include/db/MysqliManager.php sometimesmissing — restored from upstream when so.
-
Missing DB columns: users table lacked totp_secret/totp_enabled/totp_secret_created → causeduser load to return boolean. Added columns and set ROW_FORMAT=DYNAMIC to avoid row-sizeerrors.
-
PHP compatibility/extensions: system was on PHP 8.1; SuiteCRM 8 expects PHP 8.2 andextensions (intl, mbstring, xml, curl, zip, bcmath, gd). Installed php8.2 and extensions, switchedApache to PHP 8.2.
-
Symfony/bootstrap issues: public/index.php showed raw PHP or Symfony errors when .envmissing or vendor missing. Fixed by creating .env with APP_ENV/APP_SECRET/DATABASE_URLand ensuring vendor/ exists (composer install if missing).
-
Apache config / DocumentRoot wrong: Apache pointed at repo root instead of /public (resulted inraw code or wrong path /public/public). Fixed VirtualHost to DocumentRoot/var/www/html/suitecrm/public and Directory accordingly.
-
Missing var/cache (and var/log) directories: Symfony crashed silently when var/cache missing —created directories and set ownership/permissions.
-
Internal Server Error (500) persisted after above; likely causes remaining: missing vendordependencies (composer install required), missing PHP extensions, bad .htaccess / mod_rewriteor redirect loop, or silent fatal before logging (needed to enable display_errors temporarily tocapture trace).
-
What I’ve already tried (commands/actions)
-
chown -R www-data:www-data /var/www/html/suitecrm
-
chmod -R 775 on cache/var/etc; created /var/www/html/suitecrm/var/{cache,log}
-
Checked/edited config.php db_manager → MysqliManager
-
Restored include/db/MysqliManager.php from SuiteCRM 8.3.0 when missing
-
Added totp_* columns to users table and ROW_FORMAT=DYNAMIC
-
Reset admin password via suitecrm CLI (when available) or manual bcrypt SQL update
-
Installed PHP 8.2 + extensions; disabled php8.1, enabled php8.2 in Apache
-
Created/verified .env (APP_ENV, APP_SECRET, DATABASE_URL)
-
Ensured DocumentRoot → /var/www/html/suitecrm/public and updated Apache site config
-
Created vendor directory / ran composer install when possible
-
Enabled PHP info test.php to verify PHP processing
-
Temporarily enabled display_errors in public/index.php to capture fatal trace (recommended)
Key logs / error lines seen
-
[FATAL] User update error: Temp User is not retrieved at ID 1, boolean given
-
[FATAL] unable to load DB manager for: mysqli
-
Apache: AH00112/ AH00558 warnings when DocumentRoot incorrect
-
Browser: raw PHP source displayed (when Apache served wrong directory) or generic 500 InternalServer Error (when PHP crashed before logging)
Immediate help I need from the community
-
If you’ve successfully installed SuiteCRM 8 on Oracle Cloud (Ubuntu 22.04) — any known nuances withthe OCI image that break vendor/composer installs or file ownership?
-
Advice or checklist for verifying vendor/composer dependencies in a constrained/free-tier environment(composer memory/timeouts, proxy, or network limits).
-
Tips to capture fatal PHP/Symfony errors when Apache logs remain empty (best way to get a stack tracesafely on a public VM).
-
Any SuiteCRM-specific patches/hotfixes (8.x) known for Oracle Cloud or for issues with PHP 8.2 +Ubuntu 22.04 that I should apply (links or patch names appreciated).
-
If you’ve seen the totp_* schema issue before — was it caused by an installer bug or an upgrade path?Any safer schema migration SQL recommended?
Environment details (if helpful)
-
Oracle Cloud Free Tier VM (Ubuntu 22.04 LTS)
-
Apache 2.4.52
-
PHP originally 8.1 → switched to 8.2
-
MySQL/MariaDB local (named schema: suitecrm)
-
SuiteCRM 8.x (installation variant uses Symfony frontend + legacy backend)
-
Tried both CLI and manual fixes; saw missing bin/console in this package
What I can provide on request
-
Exact outputs / tail of /var/log/apache2/error.log,/var/www/html/suitecrm/public/legacy/suitecrm.log
-
Output of php -m, ls -la of vendor/ and include/db/, current config.php db_manager line, and schemadescribe users;
-
The composer install output (if requested)
Thanks — any focused pointers or a minimal set of commands to verify vendor integrity + capture the fatal trace would be hugely appreciated.