I was running CiviCRM 5.16 on top of Drupal 7.69, atop Debian 9. I tried installing the GoCardless extension (after discussion at CiviCamp Birmingham) using the built-in extensions manager and couldn't quite get it to work. I figured it might be because my CiviCRM was a bit too old, so I tried removing it and upgrading Civi to 5.23.1, then reinstalling the extension.

Somewhere in this upgrade process, I've got to the point where the CiviCRM menu bar and dashboard no longer appear on my site. Everything seems to work if I can remember the URLs, but this is obviously very frustrating. Any idea where to look? I'm not getting any browser errors, and the last thing in ConfigAndLog/CiviCRM.*.log is the database upgrade to 5.23.1

  • Did you try clearing the drupal and civicrm cache? Also check if rebuilding the menu fixes it. It can be done by visiting http://yoursitename/civicrm/menu/rebuild?reset=1 Commented Mar 13, 2020 at 5:15
  • Yeah, I've tried using drush cache-clear all and the menu rebuild URL you posted; I've also tried restarting the web server in case it's a internal cache issue, and logging out / in of Civi to see if that helps. No luck so far.
    – Dave Page
    Commented Mar 13, 2020 at 10:43
  • Ah, the Apache access logs have a clue - my site is hosted at https://yourdomain/crm/civicrm/ and I'm getting lots of 404 errors for resources at /crm/crm/sites/all/modules/civicrm/whatever
    – Dave Page
    Commented Mar 13, 2020 at 10:48
  • Right, I've hacked around this in Apache and got the menus working again, now to figure out the root cause. RedirectMatch temp "^/crm/crm/(.*)" "/crm/$1"
    – Dave Page
    Commented Mar 13, 2020 at 10:54

1 Answer 1


This is because your cms.root doesn't match properly with civicrm.root variable and you might be using variables in Resource url for 'CiviCRM Resource URL'.

You need to make sure paths are correct in your system

  1. Check the Document root path in your apache or nginx config of site.
  2. It should match exactly with the path of $civicrm_root and template_c path in settings.php

For some cases you add below two line at the end of the file you will need to change

$civicrm_setting['URL Preferences']['userFrameworkResourceURL'] = CIVICRM_UF_BASEURL . 'sites/all/modules/civicrm/';                                                                                                     
$civicrm_paths['civicrm.root']['url'] = CIVICRM_UF_BASEURL . 'sites/all/modules/civicrm/';

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.