phacility/phabricator · error · Exception

URI "%s" does not have an allowable protocol. Configure prot

Error message

URI "%s" does not have an allowable protocol. Configure protocols in `%s`. Allowed protocols are: %s.

What it means

Error "URI "%s" does not have an allowable protocol. Configure protocols in `%s`. Allowed protocols are: %s." thrown in phacility/phabricator.

Source

Thrown at src/applications/harbormaster/artifact/HarbormasterURIArtifact.php:110

    $this->validateURI($uri);
  }

  private function validateURI($raw_uri) {
    $uri = new PhutilURI($raw_uri);

    $protocol = $uri->getProtocol();
    if (!strlen($protocol)) {
      throw new Exception(
        pht(
          'Unable to identify the protocol for URI "%s". URIs must be '.
          'fully qualified and have an identifiable protocol.',
          $raw_uri));
    }

    $protocol_key = 'uri.allowed-protocols';
    $protocols = PhabricatorEnv::getEnvConfig($protocol_key);
    if (empty($protocols[$protocol])) {
      throw new Exception(
        pht(
          'URI "%s" does not have an allowable protocol. Configure '.
          'protocols in `%s`. Allowed protocols are: %s.',
          $raw_uri,
          $protocol_key,
          implode(', ', array_keys($protocols))));
    }
  }

}

View on GitHub (pinned to 5720a38cfe)

When it happens

Trigger: Thrown at src/applications/harbormaster/artifact/HarbormasterURIArtifact.php:110 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of phacility/phabricator@5720a38cfe (2026-08-21). Data as JSON: /api/errors/22cd468569a63097. Report an issue: GitHub.