Out of the box, CiviMobile for CiviCRM does not work in Drupal 9. The REST API and Path will fail. This is because certain fails that CiviMobile “expects” are not in place. There is a solution to this here:
but it didn’t work for us. It almost did, but we needed to make a few changes. Here is how we got this to work:
- Comment out the line “RewriteRule “^(.+/.*|autoload)\.php($|/)” – [F]” from .htaccess in web root (note this gets overwritten when you use “composer require”).
- Created web/libraries/civicrm/core/civicrm.config.php file by copying it from https://github.com/civicrm/civicrm-drupal/blob/7.x-master/civicrm.config.php.drupal
- copied the directory vendor/civicrm/civicrm-core/extern to web/libraries/civicrm/core.
- Edited civicrm.config.php and added the following at line 86: $confdir = ‘FULL_PATH’; This means that full directory on the server, as in /home/user/www/www etc.