2. TLDs for Testing, & Documentation Examples // Custom Niver paths define("PREFIX", ""); // Prefix in URL, if any define("ROOT_PATH", "/var/www/niver" . PREFIX); // Niver's directory define("SERVICE", substr(dirname($_SERVER['PHP_SELF']), strlen(PREFIX) + 1)); define("PAGE", basename($_SERVER['PHP_SELF'], '.php')); define("DB_PATH", ROOT_PATH . "/db/niver.db"); // Niver's SQLite database define("NIVER_TEMPLATE_PATH", "/usr/local/share/niver"); // Templates directory (nginx, knot...) define("MANIVER_PATH", "/usr/local/bin/maniver"); // Executable file define("HT_PATH", "/srv/ht"); // The mountpoint of the hypertext storage partition (that will be accessed over SFTP) // Nginx define("NGINX_CONFIG_PATH", "/etc/nginx/ht"); // Nginx configuration directory // Tor define("TOR_CONFIG_PATH", "/etc/tor/instances/niver/torrc"); // Tor configuration file define("TOR_KEYS_PATH", "/var/lib/tor-instances/niver/keys"); // Tor keys directory // Knot define("KNOT_ZONES_PATH", "/srv/ns"); // Knot zones directory // Executable files (you can get the full path of a command with $ which ) define("KNOTC_PATH", "/usr/sbin/knotc"); define("KEYMGR_PATH", "/usr/sbin/keymgr"); define("SUDO_PATH", "/usr/bin/sudo"); define("LS_PATH", "/usr/bin/ls"); // Both frontend and backend regexes define("USERNAME_REGEX", "^[a-z]{4,32}$"); define("PASSWORD_REGEX", "^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])[a-zA-Z0-9]{8,1024}|.{10,1024}$"); define("SUBDOMAIN_REGEX", "^[a-z]{4,63}$"); // Password storage security define("ALGO_PASSWORD", PASSWORD_ARGON2ID); define("OPTIONS_PASSWORD", array( "memory_cost" => 65536, "time_cost" => 24, "threads" => 64, )); // Color scheme define("THEME", array( // Displayed on light theme 'darkRegColor' => "#D100D1", 'darkNsColor' => "#006DFF", 'darkHtColor' => "#008768", 'darkAuthColor' => "#EE0000", // Displayed on dark theme 'lightRegColor' => "#FF50FF", 'lightNsColor' => "#00FFFF", 'lightHtColor' => "#FFFF00", 'lightAuthColor' => "#00FF00", 'lightColor' => '#FFFFFF', 'darkColor' => '#000000', )); // Public suffixes define("SUFFIXES", array( REGISTRY, ));