extdir/*.json URLs are not delegated properly
Following #858 (closed), there are 3 ways to address the extdir service:
- https://civicrm.org/extdir/ - Main public address. Symfony-based.
- https://civicrm.org/extdir-backend/ - Alternate/hidden address. Drupal-based.
- https://civicrm.org/extdir-symfony/ - Alternate/hidden address. Symfony-based.
So, for example, if one requested
git-urls.json, you'd expect something similar:
- https://civicrm.org/extdir/git-urls.json - Main public address. Symfony-based.
- https://civicrm.org/extdir-backend/git-urls.json - Alternate/hidden address. Drupal-based.
- https://civicrm.org/extdir-symfony/git-urls.json - Alternate/hidden address. Symfony-based.
However, there appears to be some override in the nginx config for
civicrm.org which causes all
*.json requests to go to Drupal. This seems to be in
/var/aegir/config/includes/nginx_vhost_common.conf, although I don't understand the precedence of the various nginx rules.
The nginx config should be updated so that
/extdir-symfony/* are delegated consistently.
How can one tell if the correct content is being served?
- All links should return a valid JSON document.
- If Drupal is serving the content, then the git URLs are not normalized. Consequently,there's a mix of SSH addresses and HTTPS URLs. (Ex:
- If Symfony is serving the content, then the git URLs are normalized. Consequently, there's only HTTPS URLs. (Ex: