General Settings

Configure core site settings including URL, title, branding, locale, and integrations.

Breadcrumb: System Configuration > General Settings

Overview

General Settings control the fundamental aspects of your PteroCA installation including:

  • Site identity (URL, title)

  • Localization (interface language)

  • Landing page (enable/disable public homepage)

  • Telemetry and data collection

  • Server lifecycle management (automatic deletion)

  • Integration with PHPMyAdmin

These settings affect how your panel operates and integrates with other services. Essential general settings can be configured during initial setup via the CLI wizard, with all options available through the Admin Panel.

Settings Overview

Setting
Type
CLI
Admin Panel
Description

Site URL

URL

Base URL of your application with protocol

Site Title

Text

Title displayed throughout the application

Site Locale

Locale

Default interface language

Landing Page Enabled

Boolean

Enable public landing page at root URL

Telemetry Consent

Boolean

Allow anonymous usage data collection

Delete Suspended Servers

Boolean

Auto-delete suspended servers

Days After Suspension

Number

Grace period before deletion

Show PHPMyAdmin URL

Boolean

Display PHPMyAdmin link in menu

PHPMyAdmin URL

URL

URL to PHPMyAdmin installation

Price Format

SELECT

Decimal and thousands separator format

Date Format

SELECT

PHP date format for displaying dates

Date Timezone

SELECT

Timezone for date display

Show Timezone

BOOLEAN

Append timezone abbreviation to dates

Custom Head Scripts (Landing)

TEXT

Custom HTML/JS injected in landing page <head>

Custom Head Scripts (Panel)

TEXT

Custom HTML/JS injected in panel <head>

Configuration via CLI Wizard

The CLI configuration wizard covers 3 essential general settings during initial setup.

Run the Wizard

Settings Covered

1. Site URL

Prompted during wizard with default value.

Requirements:

  • Must include protocol (http:// or https://)

  • No trailing slash

  • Must be accessible from the internet (for production)

2. Site Title

Name of your panel displayed in the browser and UI.

Best Practices:

  • Keep it concise (2-4 words)

  • Reflects your brand or service

  • Avoid special characters

3. Site Locale

Default language for the user interface.

Available Locales:

  • en - English

  • pl - Polish (Polski)

  • de - German (Deutsch)

  • de_CH - Swiss German (Schweizerdeutsch)

  • fr - French (Français)

  • es - Spanish (Español)

  • it - Italian (Italiano)

  • pt - Portuguese (Português)

  • nl - Dutch (Nederlands)

  • id - Indonesian (Bahasa Indonesia)

  • cn - Chinese (中文)

  • hi - Hindi (हिन्दी)

  • ru - Russian (Русский)

  • ua - Ukrainian (Українська)

Note: Users can override this in their profile settings.

Configuration via Admin Panel

All 10 general settings can be managed through the Admin Panel.

Access General Settings

  1. Log in to the Admin Panel

  2. Navigate to Settings in the main menu

  3. Click General

  4. Update values

  5. Click Save

Setting Details

Site URL

Setting Code: site_url Field Type: URL Required: Yes Default: http://localhost

The base URL where your PteroCA panel is accessible. This is used throughout the system for:

  • Generating links in emails

  • Asset URLs

  • SSO redirects

Format:

Validation:

  • Must start with http:// or https://

  • No trailing slash allowed

  • Valid domain or IP address

Impact:

  • Email links will use this URL

  • Affects SSO redirects

Best Practices:

  • Use HTTPS in production

  • Ensure DNS is properly configured

  • Match your actual domain exactly

Site Title

Setting Code: site_title Field Type: Text Required: Yes Default: My App Max Length: 255 characters

The title displayed in:

  • Browser tab

  • Page headers

  • Email subjects

  • Notification titles

Example:

Impact:

  • Visible throughout the entire application

  • Used in email subjects and notifications

  • Displayed in browser bookmarks

Site Locale

Setting Code: site_locale Field Type: Locale (Select) Required: Yes Default: en

Default language for the user interface.

Available Options:

  • en - English

  • pl - Polish (Polski)

  • de - German (Deutsch)

  • de_CH - Swiss German (Schweizerdeutsch)

  • fr - French (Français)

  • es - Spanish (Español)

  • it - Italian (Italiano)

  • pt - Portuguese (Português)

  • nl - Dutch (Nederlands)

  • id - Indonesian (Bahasa Indonesia)

  • cn - Chinese (中文)

  • hi - Hindi (हिन्दी)

  • ru - Russian (Русский)

  • ua - Ukrainian (Українська)

Impact:

  • Default language for new users

  • Used in system-generated content

  • Affects date/time formatting

  • Controls currency formatting

Note: Individual users can override this in their account settings.

Landing Page Enabled

Setting Code: landing_page_enabled Field Type: Boolean (Toggle) Required: No Default: true Added in: v0.6.3

Enable or disable the public landing page at the root URL of your panel.

When Enabled:

  • Root URL (/) displays the public landing page

  • Visitors can browse products and categories without logging in

  • /store route shows full product catalog

  • Great for marketing and attracting new customers

  • Featured categories and products showcased on homepage

When Disabled:

  • Root URL (/) redirects to login page

  • Only authenticated users can access the panel

  • Traditional panel-only behavior (like pre-v0.6.3)

  • No public product browsing

  • More private/closed system

Use Cases for Enabling:

  1. Public Hosting Business:

    • Show off your products to visitors

    • Allow browsing before registration

    • Marketing and SEO benefits

    • Attract new customers

  2. Commercial Services:

    • Professional storefront

    • Product comparison for potential customers

    • Build trust with public presence

Use Cases for Disabling:

  1. Private/Internal Use:

    • Internal company infrastructure

    • Private game server network

    • Friends/community only

    • No need for public marketing

  2. Custom Landing Page:

    • Using external website for marketing

    • WordPress or custom CMS for homepage

    • Want PteroCA for panel only, not storefront

  3. Security/Privacy:

    • Don't want to expose product offerings publicly

    • Invite-only service

    • Closed/private hosting

Impact of Changing:

Enabling the landing page:

  • Requires theme with "landing" context support

  • May need to configure featured categories/products

  • Consider customizing landing page theme separately

Disabling the landing page:

  • All traffic to / redirected to /login

  • Featured items still saved but not displayed

  • Can re-enable anytime without losing configuration

circle-info

Complete Landing Page Documentation

For detailed landing page configuration including featured items, widgets, and theme customization, see Landing Page.

Best Practices:

  1. Public Business:

    • Keep enabled

    • Configure featured categories and products

    • Add attractive images and descriptions

    • Use dedicated landing theme

  2. Private Use:

    • Disable if not needed

    • Saves resources

    • Simpler user experience

  3. Hybrid Approach:

    • Use external website for main marketing

    • Disable built-in landing page

    • Use PteroCA for authenticated users only

Setting Code: telemetry_consent Field Type: Boolean (Toggle) Required: No Default: true

Allow sending anonymous usage data to help improve PteroCA.

Data Collected:

  • Installation events (install, update)

  • Error occurrences (without sensitive data)

  • PteroCA version

  • PHP version

NOT Collected:

  • Personal data

  • API keys

  • URLs

  • User information

  • Server configurations

Purpose:

  • Identify common errors

  • Prioritize bug fixes

  • Understand version adoption

  • Improve software quality

Privacy:

  • Completely anonymous

  • No tracking of individual installations

  • No personally identifiable information

  • Can be disabled at any time

When Disabled:

  • No data sent to PteroCA servers

  • Full functionality maintained

  • No impact on performance

Delete Suspended Servers Enabled

Setting Code: delete_suspended_servers_enabled Field Type: Boolean (Toggle) Required: No Default: false

Automatically delete servers that remain suspended beyond configured grace period.

When Enabled:

  • Suspended servers deleted after X days

  • Frees up resources automatically

  • Permanent deletion (cannot be recovered)

Workflow:

  1. Server payment expires

  2. Server suspended immediately

  3. Grace period begins (configured in next setting)

  4. After X days, server permanently deleted from Pterodactyl

Use Cases:

  • Automatic resource cleanup

  • Enforce payment policies

  • Free up allocations and ports

  • Reduce manual administration

Warning:

  • Deletion is PERMANENT

  • All server data lost (files, databases, configurations)

  • No recovery possible

  • Ensure clear communication to users in ToS

Best Practices:

  • Set reasonable grace period (14-30 days recommended)

  • Send renewal notifications before expiration

  • Document policy clearly in Terms of Service

  • Provide backup/export options to users

Delete Suspended Servers Days After

Setting Code: delete_suspended_servers_days_after Field Type: Number Required: Only if auto-deletion enabled Default: 30 Min: 1 day Recommended: 14-30 days

Number of days after suspension before automatic deletion.

Recommended Values:

Use Case
Days
Rationale

Strict Policy

7

Quick cleanup, aggressive enforcement

Balanced

14-30

Reasonable grace period

Generous

60-90

Extended opportunity to renew

Considerations:

  1. Legal/Regulatory:

    • Some jurisdictions may require minimum grace periods

    • Check local consumer protection laws

    • Document retention policies

  2. User Experience:

    • Longer period = better UX, fewer complaints

    • Shorter period = faster resource recovery

    • Balance business needs with customer satisfaction

  3. Resource Management:

    • High demand for resources = shorter period justified

    • Plenty of available resources = longer period acceptable

  4. Communication:

    • Send multiple renewal reminders before expiration

    • Clear warning X days before deletion

    • Final notice 24-48 hours before deletion

Example Configuration:

Notification Integration: Enable renewal notifications in Email Settings to automatically remind users before suspension.

Show PHPMyAdmin URL

Setting Code: show_phpmyadmin_url Field Type: Boolean (Toggle) Required: No Default: false

Display a link to PHPMyAdmin in the admin menu.

When Enabled:

  • Link appears in Settings menu

  • Only visible to users with appropriate permissions

  • Opens in new tab

Security Considerations:

  • Ensure PHPMyAdmin is properly secured

  • Use strong authentication

  • Consider IP restrictions

  • Keep PHPMyAdmin updated

PHPMyAdmin URL

Setting Code: phpmyadmin_url Field Type: URL Required: Only if "Show PHPMyAdmin URL" is enabled Default: None

URL to your PHPMyAdmin installation.

Format:

Requirements:

  • Must include protocol

  • Should be HTTPS in production

  • Must be accessible from admin's browsers

Example Configurations:

Same Server:

Separate Subdomain:

Different Port:

Price Format (price_format)

Type: SELECT Default: ,| (displays as 1 234,56)

Controls how prices are displayed throughout the panel and in email notifications.

Option Value
Decimal Separator
Thousands Separator
Example

.|,

.

,

1,234.56

.,

.

none

1234.56

.,

.

space

1 234.56

,|.

,

.

1.234,56

,|

,

none

1234,56

,|

,

space

1 234,56

The value is stored as {decimal}|{thousands} pipe-delimited. This format applies to all price displays in the panel and outgoing emails.

Date Format (date_format)

Type: SELECT Default: Y-m-d H:i

Controls how dates and times are displayed throughout the panel.

PHP Format
Example Output

Y-m-d H:i

2025-06-01 14:30

Y-m-d H:i:s

2025-06-01 14:30:00

d.m.Y H:i

01.06.2025 14:30

d/m/Y H:i

01/06/2025 14:30

m/d/Y H:i

06/01/2025 14:30

d M Y H:i

01 Jun 2025 14:30

D, d M Y H:i

Sun, 01 Jun 2025 14:30

U

1748779800 (Unix timestamp)

Date Timezone (date_timezone)

Type: SELECT Default: UTC

Sets the timezone used for displaying dates. Dates are stored internally in UTC and converted to the selected timezone before display.

Available options include major timezones such as UTC, Europe/London, Europe/Warsaw, Europe/Berlin, America/New_York, America/Chicago, America/Denver, America/Los_Angeles, America/Toronto, America/Sao_Paulo, Asia/Tokyo, Asia/Shanghai, Asia/Kolkata, Asia/Singapore, Asia/Dubai, Asia/Seoul, Australia/Sydney, Pacific/Auckland, Africa/Cairo, Africa/Johannesburg, and approximately 25 others.

Note: Changing this setting affects only the display of dates — all data remains stored in UTC.

Show Timezone (date_show_timezone)

Type: BOOLEAN Default: false

When enabled, appends the timezone abbreviation to all displayed dates. For example: 2025-06-01 14:30 (CET).

This is useful for multi-timezone deployments where users may be in different regions.

Custom Head Scripts — Landing Page (custom_head_scripts_landing)

Type: TEXT (code editor) Default: null (disabled)

Allows injecting custom HTML or JavaScript into the <head> element of the landing page. Useful for analytics tracking scripts, custom fonts, or third-party integrations.

Security Warning: Only insert scripts from trusted sources. Malicious code injected here can compromise visitor security and data.

Custom Head Scripts — Panel (custom_head_scripts_panel)

Type: TEXT (code editor) Default: null (disabled)

Allows injecting custom HTML or JavaScript into the <head> element of the admin and client panel. Useful for analytics, custom styling, or third-party integrations targeting panel users.

Security Warning: Only insert scripts from trusted sources. Code injected here runs in the context of authenticated panel sessions.

Note: Settings related to branding (logo, favicon), MOTD, and theme appearance are located in Theme Settings, not General Settings. See Theme Settings.

Note: Log cleanup configuration (log_cleanup_enabled, log_cleanup_days_after) is managed at the system level. See Logs & Monitoring for details.

Best Practices

Site Identity

  1. Choose a Memorable Title: Your site title is one of the first things users see

  2. Consistent URL: Avoid changing site URL after launch (breaks links)

  3. HTTPS Everywhere: Always use HTTPS in production

  4. Professional Domain: Use custom domain instead of shared hosting subdomain

Localization

  1. Know Your Audience: Set default locale to match your primary user base

  2. Test Translations: Verify UI elements in your chosen locale

  3. Document Languages: Let users know which languages you support

  4. Update Consistently: Keep translations updated when adding features

Server Lifecycle Management

  1. Set Appropriate Grace Period: Balance business needs with user experience (14-30 days recommended)

  2. Clear Communication: Document deletion policy in Terms of Service

  3. Multiple Notifications: Send renewal reminders at 7 days, 3 days, and 1 day before expiration

  4. Provide Backups: Allow users to export/download server data before deletion

  5. Monitor Automation: Regularly review auto-deletion logs

Telemetry and Privacy

  1. Transparency: Inform users about data collection in Terms of Service

  2. Respect Choice: Allow disabling telemetry without functionality loss

  3. Keep Anonymous: Never collect personal or sensitive data

  4. Regular Review: Periodically review what data is collected

PHPMyAdmin Integration

  1. Security First: Use strong passwords and IP restrictions

  2. Separate Subdomain: Host PHPMyAdmin on separate subdomain

  3. Regular Updates: Keep PHPMyAdmin updated for security

  4. Limit Access: Only show to administrators who need it

Troubleshooting

Site URL Issues

Problem: Links in emails point to wrong URL

Cause: Site URL not properly configured

Solution:

  1. Verify Site URL in Settings → General

  2. Ensure it matches your actual domain

  3. Clear application cache: php bin/console cache:clear

  4. Test by sending a password reset email

Locale Issues

Problem: UI still shows in English after changing locale

Cause: Translation files not loaded or cache not cleared

Solutions:

  1. Clear application cache: php bin/console cache:clear

  2. Verify locale code is correct (e.g., pl not pl_PL)

  3. Check if translation files exist for chosen locale

  4. Refresh browser (Ctrl+F5)


Problem: Some text remains in English

Cause: Incomplete translations for selected locale

Solution:

  1. This is normal - not all strings may be translated

  2. Contribute translations if you can

  3. Report missing translations on GitHub

  4. Some third-party plugins may not support all locales

PHPMyAdmin Integration

Problem: PHPMyAdmin link not visible in menu

Cause: "Show PHPMyAdmin URL" is disabled or permission issue

Solutions:

  1. Enable "Show PHPMyAdmin URL" in Settings → General

  2. Set PHPMyAdmin URL

  3. Verify your user has appropriate permissions

  4. Clear browser cache


Problem: PHPMyAdmin link leads to 404 error

Cause: Incorrect URL configuration

Solutions:

  1. Verify PHPMyAdmin URL is correct

  2. Test URL directly in browser

  3. Ensure PHPMyAdmin is installed and accessible

  4. Check web server configuration

Additional Resources

Last updated