phacility/phabricator · error · PhabricatorConfigValidationException

Config option '%s' is invalid. The URI must contain a dot ('

Error message

Config option '%s' is invalid. The URI must contain a dot ('.'), like '%s', not just a bare name like '%s'. Some web browsers will not set cookies on domains with no TLD.

What it means

Error "Config option '%s' is invalid. The URI must contain a dot ('.'), like '%s', not just a bare name like '%s'. Some web browsers will not set cookies on domains with no TLD." thrown in phacility/phabricator.

Source

Thrown at src/applications/config/option/PhabricatorSecurityConfigOptions.php:312

    $key = $option->getKey();
    if ($key == 'security.alternate-file-domain') {

      $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 ('.'), ".
            "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/',
            'http://example/'));
      }

      $path = $uri->getPath();
      if ($path !== '' && $path !== '/') {
        throw new PhabricatorConfigValidationException(
          pht(
            "Config option '%s' is invalid. The URI must NOT have a path, ".
            "e.g. '%s' is OK, but '%s' is not. This software must be ".
            "installed on an entire domain; it can not be installed on a path.",
            $key,
            'http://devtools.example.com/',

View on GitHub (pinned to 5720a38cfe)

When it happens

Trigger: Thrown at src/applications/config/option/PhabricatorSecurityConfigOptions.php:312 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/c71a790ae5253cc0. Report an issue: GitHub.