phacility/phabricator · error · PhabricatorConfigValidationException

Config option "%s" is invalid. The URI must start with "%s"

Error message

Config option "%s" is invalid. The URI must start with "%s" or "%s".

What it means

Error "Config option "%s" is invalid. The URI must start with "%s" or "%s"." thrown in phacility/phabricator.

Source

Thrown at src/applications/config/option/PhabricatorCoreConfigOptions.php:282

          ))
        ->setSummary(pht('Stop this software from sending any email, etc.'))
        ->setDescription($silent_description),
      );

  }

  protected function didValidateOption(
    PhabricatorConfigOption $option,
    $value) {

    $key = $option->getKey();
    if ($key == 'phabricator.base-uri' ||
        $key == 'phabricator.production-uri') {

      $uri = new PhutilURI($value);
      $protocol = $uri->getProtocol();
      if ($protocol !== 'http' && $protocol !== 'https') {
        throw new PhabricatorConfigValidationException(
          pht(
            'Config option "%s" is invalid. The URI must start with '.
            '"%s" or "%s".',
            $key,
            'http://',
            'https://'));
      }

      $domain = $uri->getDomain();
      if (strpos($domain, '.') === false) {
        throw new PhabricatorConfigValidationException(
          pht(
            'Config option "%s" is invalid. The URI must contain a dot '.
            '("%s"), like "%s", not just a bare name like "%s". Some web '.
            'browsers will not set cookies on domains with no TLD.',
            $key,
            '.',
            'http://example.com/',

View on GitHub (pinned to 5720a38cfe)

When it happens

Trigger: Thrown at src/applications/config/option/PhabricatorCoreConfigOptions.php:282 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/e8b788692039bd0a. Report an issue: GitHub.