8. Configuration reference

This document lists all configuration keys used by phpMyFAQ, their default values, and a description of what each setting controls. These values are set during installation and can be changed in the admin panel under Configuration.

8.1 General

8.1.1 Main settings

Key Label Default Description
main.currentVersion phpMyFAQ Version (auto-detected) The currently installed phpMyFAQ version. Set automatically during installation and upgrades.
main.currentApiVersion API Version (auto-detected) The current REST API version. Set automatically.
main.language Standard language (set during install) The default language for the FAQ frontend and admin panel.
main.languageDetection Enable automatic language detection via web browser true When enabled, phpMyFAQ tries to detect the user's preferred language from their browser settings.
main.phpMyFAQToken phpMyFAQ Token (auto-generated) A unique token generated during installation, used internally for security purposes.
main.referenceURL URL of your FAQ (set during install) The base URL of your phpMyFAQ installation (e.g. https://www.example.org/faq/).
main.administrationMail Email address of the Admin webmaster@example.org The administrator's email address, used as the sender/recipient for system notifications.
main.contactInformation Contact information (empty) Free-text contact information displayed on the contact page.
main.enableAdminLog Use admin log? true Enables logging of administrative actions for auditing purposes.
main.enableUserTracking Enable user tracking true Tracks user visits and page views for statistics.
main.metaDescription Description phpMyFAQ should be the answer for all questions in life The HTML meta description used on the FAQ pages.
main.metaPublisher Name of the Publisher (set during install) The publisher name used in HTML meta tags.
main.titleFAQ Title of your FAQ phpMyFAQ Codename Palaimon The main title displayed in the FAQ header and browser title bar.
main.enableWysiwygEditor Enable bundled WYSIWYG editor true Enables the rich-text WYSIWYG editor in the admin panel for creating and editing FAQ entries.
main.enableWysiwygEditorFrontend Enable bundled WYSIWYG editor in frontend false Enables the WYSIWYG editor for frontend users when submitting new FAQs.
main.enableMarkdownEditor Enable bundled Markdown editor false Enables a Markdown editor as an alternative to the WYSIWYG editor.
main.enableCommentEditor Enable WYSIWYG editor for comments (logged-in users only) false When enabled, logged-in users can use the WYSIWYG editor to format their comments.
main.dateFormat Date format Y-m-d H:i The PHP date format string used to display dates throughout the FAQ.
main.maintenanceMode Set FAQ in maintenance mode false When enabled, the FAQ is taken offline and only administrators can access it. Useful during updates or maintenance.
main.enableGravatarSupport Gravatar Support false Enables Gravatar profile images for users based on their email address.
main.customPdfHeader Custom PDF Header (HTML allowed) (empty) Custom HTML content to include in the header of exported PDF files.
main.customPdfFooter Custom PDF Footer (HTML allowed) (empty) Custom HTML content to include in the footer of exported PDF files.
main.enableSmartAnswering Enable smart answering for user questions true When a user submits a question, the system suggests existing FAQ entries that might already answer it.
main.enableCategoryRestrictions Enable category restrictions true Enables permission-based access restrictions on categories, allowing you to limit category visibility to specific users or groups.
main.enableSendToFriend Enable send to friends true Allows users to share FAQ entries via email with a "Send to friend" feature.
main.privacyURL URL for Privacy note (empty) URL to your privacy policy page. Use page:slug for a custom phpMyFAQ page or a full URL for an external page.
main.termsURL URL for Terms of Service (empty) URL to your terms of service page. Use page:slug for a custom phpMyFAQ page or a full URL for an external page.
main.imprintURL URL for Imprint (empty) URL to your imprint/legal notice page. Use page:slug for a custom phpMyFAQ page or a full URL for an external page.
main.cookiePolicyURL URL for Cookie Policy (empty) URL to your cookie policy page. Use page:slug for a custom phpMyFAQ page or a full URL for an external page.
main.accessibilityStatementURL URL for Accessibility Statement (empty) URL to your accessibility statement page. Use page:slug for a custom phpMyFAQ page or a full URL for an external page.
main.enableAutoUpdateHint Automatic check for new versions true When enabled, the admin panel checks for new phpMyFAQ versions and displays an update notification.
main.enableAskQuestions Enable "Ask question" false Enables the "Ask a question" feature that allows users to submit questions from the frontend.
main.enableNotifications Enable notifications false Enables email notifications for events such as new questions, new FAQs, or new comments.
main.botIgnoreList Bot-ignore-list (Separate with commas) (long list of known bots) A comma-separated list of user-agent strings to ignore in user tracking. Common search engine crawlers and bots are included by default.

8.1.2 FAQ Records settings

Key Label Default Description
records.numberOfRecordsPerPage Number of displayed topics per page 10 How many FAQ entries are shown per page in category listings.
records.numberOfShownNewsEntries Number of news articles 3 The number of news entries displayed on the start page.
records.defaultActivation Automatically activate new records false When enabled, newly created FAQ entries are immediately visible. When disabled, an admin must activate them first.
records.defaultAllowComments Allow comments for new records false When enabled, comments are allowed by default on newly created FAQ entries.
records.enableVisibilityQuestions Disable visibility of new questions? false Controls whether newly submitted user questions are visible to other users on the open questions page.
records.numberOfRelatedArticles Number of related entries 5 The number of related FAQ entries displayed alongside each FAQ.
records.orderby Record sorting (according to property) id The property used to sort FAQ entries. Options include id, title, date, and author.
records.sortby Record sorting (descending or ascending) DESC The sort direction for FAQ entries: DESC (newest first) or ASC (oldest first).
records.orderingPopularFaqs Sorting of the top FAQs visits How the most popular FAQs are determined. Options: visits (by page views) or voting (by user ratings).
records.disableAttachments Enable visibility of attachments true Controls whether file attachments are visible and downloadable on FAQ entries. Despite the key name, true means attachments are shown.
records.maxAttachmentSize Maximum size for attachments in bytes 100000 The maximum allowed file size for attachments in bytes (default ~100 KB).
records.attachmentsPath Path where attachments will be saved content/user/attachments The directory path for storing uploaded attachments, relative to the web root.
records.attachmentsStorageType Attachment storage type 0 The storage backend for attachments. 0 = filesystem.
records.enableAttachmentEncryption Enable attachment encryption false When enabled, uploaded attachments are encrypted on disk. Only takes effect when attachments are enabled.
records.defaultAttachmentEncKey Default attachment encryption key (empty) The encryption key used for attachment encryption. Warning: Do not change this after it has been set and files have been encrypted.
records.enableCloseQuestion Close open question after answer? false When enabled, open user questions are automatically closed once a matching FAQ is created.
records.enableDeleteQuestion Delete open question after answer? false When enabled, open user questions are automatically deleted once a matching FAQ is created.
records.randomSort Sort FAQs randomly false When enabled, FAQ entries within a category are displayed in random order.
records.allowCommentsForGuests Allow comments for guests true Allows non-logged-in visitors to post comments on FAQ entries.
records.allowQuestionsForGuests Allow adding questions for guests true Allows non-logged-in visitors to submit questions.
records.allowNewFaqsForGuests Allow adding new FAQs for guests true Allows non-logged-in visitors to submit new FAQ entries for review.
records.hideEmptyCategories Hide empty categories false When enabled, categories that contain no FAQ entries are hidden from the frontend.
records.allowDownloadsForGuests Allow downloads for guests false When enabled, non-logged-in visitors can download attachments.
records.numberMaxStoredRevisions Maximum stored revisions 10 The maximum number of revisions to keep per FAQ entry. Older revisions are discarded.
records.enableAutoRevisions Allow versioning of FAQ changes false When enabled, a new revision is automatically created every time a FAQ entry is saved.
records.orderStickyFaqsCustom Custom ordering of sticky records false When enabled, sticky (pinned) FAQ entries can be manually reordered in the admin panel.
records.allowedMediaHosts Allowed external hosts for media content www.youtube.com A comma-separated list of external hostnames allowed for embedded media content (e.g. videos).

8.1.3 Search settings

Key Label Default Description
search.numberSearchTerms Number of listed search terms 10 The number of popular search terms displayed to users.
search.relevance Sort by relevance thema,content,keywords Defines the order of fields used for relevance sorting in search results.
search.enableRelevance Activate relevance support? false When enabled, search results are sorted by relevance rather than by default ordering.
search.enableHighlighting Highlight search terms true Highlights the matching search terms in search results for easier scanning.
search.searchForSolutionId Search for solution ID true When enabled, users can search by the unique solution ID of a FAQ entry.
search.popularSearchTimeWindow Time window for popular searches (days) 180 The number of days to look back when calculating popular search terms.
search.enableElasticsearch Enable Elasticsearch support false Enables Elasticsearch as the search backend instead of the built-in database search. Requires a running Elasticsearch instance.
search.enableOpenSearch Enable OpenSearch support false Enables OpenSearch as the search backend. Requires a running OpenSearch instance.

8.1.4 Translation settings

Key Label Default Description
translation.provider Translation service provider none The translation service to use for automatic FAQ translation. Options: none, google, deepl, azure, amazon, libretranslate.
translation.googleApiKey Google Cloud Translation API key (empty) The API key for Google Cloud Translation.
translation.deeplApiKey DeepL API key (empty) The API key for the DeepL translation service.
translation.deeplUseFreeApi Use DeepL Free API (instead of Pro) true When enabled, uses the free tier of the DeepL API instead of the paid Pro version.
translation.azureKey Azure Translator API key (empty) The API key for Microsoft Azure Translator.
translation.azureRegion Azure region (empty) The Azure region for the Translator service (e.g. eastus, westeurope).
translation.amazonAccessKeyId Amazon Translate AWS Access Key ID (empty) The AWS Access Key ID for Amazon Translate.
translation.amazonSecretAccessKey Amazon Translate AWS Secret Access Key (empty) The AWS Secret Access Key for Amazon Translate.
translation.amazonRegion Amazon Translate AWS region us-east-1 The AWS region for Amazon Translate (e.g. us-east-1, eu-west-1).
translation.libreTranslateUrl LibreTranslate server URL https://libretranslate.com The URL of the LibreTranslate server instance.
translation.libreTranslateApiKey LibreTranslate API key (optional) (empty) The API key for the LibreTranslate service, if required by the server.

8.2 Security

8.2.1 Security settings

Key Label Default Description
security.permLevel Permission level basic The permission model: basic (user-level permissions only) or medium (user and group permissions).
security.ipCheck Check the IP in administration false When enabled, the admin session is bound to the user's IP address for additional security.
security.enableLoginOnly Complete secured FAQ false When enabled, the entire FAQ is accessible only to logged-in users.
security.bannedIPs Ban these IPs (empty) A list of IP addresses that are blocked from accessing the FAQ.
security.ssoSupport Enable Single Sign On Support false Enables Single Sign-On (SSO) authentication using external identity providers.
security.ssoLogoutRedirect Single Sign On logout redirect service URL (empty) The URL to redirect users to after logging out when SSO is enabled.
security.useSslForLogins Only allow logins over SSL connection? false When enabled, login forms are only served over HTTPS connections.
security.useSslOnly FAQ with SSL only false When enabled, the entire FAQ is forced to use HTTPS.
security.forcePasswordUpdate Force password update false When enabled, users are required to change their password on next login.
security.enableRegistration Enable registration for visitors true Allows new users to register an account on the FAQ.
security.domainWhiteListForRegistrations Allowed hosts for registrations (empty) A list of allowed email domains for new registrations. Leave empty to allow all domains.
security.enableSignInWithMicrosoft Enable Sign in with Microsoft Entra ID false Enables authentication via Microsoft Entra ID (formerly Azure AD).
keycloak.enable Enable Keycloak sign-in false Enables OpenID Connect authentication via Keycloak for the frontend and admin login forms.
keycloak.baseUrl Keycloak base URL (empty) Base URL of the Keycloak server, for example https://sso.example.com.
keycloak.realm Realm (empty) Keycloak realm used for phpMyFAQ authentication.
keycloak.clientId Client ID (empty) OIDC client identifier configured in Keycloak.
keycloak.clientSecret Client secret (empty) Client secret configured for the Keycloak OIDC client.
keycloak.redirectUri Redirect URI (empty) Callback URL registered in the Keycloak client, usually https://faq.example.com/auth/keycloak/callback.
keycloak.scopes Scopes openid profile email Space-separated scopes requested during login.
keycloak.autoProvision Automatically create phpMyFAQ users on first Keycloak login false When enabled, phpMyFAQ creates a local user automatically if no matching account exists yet.
keycloak.groupAutoAssign Automatically assign phpMyFAQ groups from Keycloak roles false When enabled and permission level medium is active, phpMyFAQ assigns users to groups derived from Keycloak roles on login.
keycloak.groupSyncOnLogin Synchronize mapped phpMyFAQ groups on login false When enabled, phpMyFAQ also removes stale memberships for groups managed by the Keycloak role mapping during login.
keycloak.groupMapping Role to group mapping (empty) JSON object mapping Keycloak role names to phpMyFAQ group names, for example {"admin":"Administrators","faq-editors":"Editors"}. Only mapped roles are managed for assignment and synchronization.
keycloak.logoutRedirectUrl Logout redirect URL (empty) URL users should be redirected to after logging out from Keycloak, for example https://faq.example.com/.
security.enableGoogleReCaptchaV2 Enable Invisible Google ReCAPTCHA v2 false Enables Google reCAPTCHA v2 to protect forms from spam and abuse.
security.googleReCaptchaV2SiteKey Google ReCAPTCHA v2 site key (empty) The site key from your Google reCAPTCHA v2 registration.
security.googleReCaptchaV2SecretKey Google ReCAPTCHA v2 secret key (empty) The secret key from your Google reCAPTCHA v2 registration.
security.loginWithEmailAddress Login only with email address false When enabled, users must log in using their email address instead of a username.
security.enableWebAuthnSupport Activate WebAuthn support (Experimental) false Enables passwordless authentication via WebAuthn (hardware security keys, biometrics). This feature is experimental.
security.enableAdminSessionTimeoutCounter Activate admin session timeout counter true Displays a countdown timer in the admin panel showing the remaining session time before automatic logout.

8.2.2 Spam protection settings

Key Label Default Description
spam.checkBannedWords Check public form content against banned words true Checks user-submitted content against a list of banned words to prevent spam.
spam.enableCaptchaCode Use a captcha code to allow public form submission (auto-detected) Enables a captcha on public forms. Automatically enabled if the PHP GD extension is available.
spam.enableSafeEmail Print user email in a safe way true Obfuscates email addresses on the frontend to prevent harvesting by spam bots.
spam.manualActivation Manually activate new users true When enabled, new user registrations require manual approval by an administrator.
spam.mailAddressInExport Show email address in exports true When enabled, user email addresses are included in FAQ exports (PDF, HTML, etc.).

8.3 Layout

8.2.1 Layout settings

Key Label Default Description
layout.templateSet Template set to be used default The active frontend template/theme. Templates are located in the assets/themes/ directory.
layout.enablePrivacyLink Activate link to privacy policy true Displays a link to the privacy policy in the footer. Requires main.privacyURL to be set.
layout.enableCookieConsent Activate Cookie Consent true Enables a cookie consent banner for GDPR/privacy compliance.
layout.contactInformationHTML Contact information as HTML? false When enabled, the contact information field is rendered as HTML instead of plain text.
layout.customCss Custom CSS (empty) Custom CSS rules applied to the frontend. Use CSS only, no HTML or JavaScript.

8.3.2 SEO settings

Key Label Default Description
seo.title SERP title phpMyFAQ Codename Porus The title used in search engine result pages (SERPs) and the browser title bar.
seo.description SERP description phpMyFAQ should be the answer for all questions in life The meta description used in search engine result pages.
seo.enableXMLSitemap Enable XML sitemap true Generates an XML sitemap at /sitemap.xml for search engine indexing.
seo.enableRichSnippets Enable Rich Snippets false Adds structured data (JSON-LD) to FAQ pages for enhanced search engine result display.
seo.metaTagsHome Robots Meta Tags start page index, follow The robots meta tag directive for the start page.
seo.metaTagsFaqs Robots Meta Tags FAQs index, follow The robots meta tag directive for FAQ entry pages.
seo.metaTagsCategories Meta Tags category pages index, follow The robots meta tag directive for category pages.
seo.metaTagsPages Robots Meta Tags static pages index, follow The robots meta tag directive for static/custom pages.
seo.metaTagsAdmin Robots Meta Tags Admin noindex, nofollow The robots meta tag directive for admin pages. Should remain noindex, nofollow.
seo.contentRobotsText Content for robots.txt (see below) Custom content for the robots.txt file. Default disallows /admin/ and includes the sitemap URL.
seo.contentLlmsText Content for llms.txt (see below) Custom content for the llms.txt file, providing information about AI/LLM training data availability.

8.4 Communication

8.4.1 Mail settings

Key Label Default Description
mail.noReplySenderAddress No reply address for emails (empty) The "no-reply" sender address for outgoing emails. If empty, the administration email is used.
mail.remoteSMTP Use remote SMTP server false When enabled, phpMyFAQ sends emails through an external SMTP server instead of the local mail() function.
mail.remoteSMTPServer Server address (empty) The hostname or IP address of the SMTP server.
mail.remoteSMTPUsername Username (empty) The username for SMTP authentication.
mail.remoteSMTPPassword Password (empty) The password for SMTP authentication.
mail.remoteSMTPPort SMTP server port 25 The port number of the SMTP server (common values: 25, 465, 587).
mail.remoteSMTPDisableTLSPeerVerification Disable SMTP TLS peer verification (not recommended) false Disables TLS certificate verification for the SMTP connection. Only use this for testing or with self-signed certificates.
mail.useQueue Use background worker queue for email delivery true When enabled, emails are queued and sent in the background instead of being sent immediately during the request.
mail.provider Mail provider smtp The mail delivery provider. Options: smtp, sendgrid, ses, mailgun.
mail.sendgridApiKey SendGrid API key (empty) API key for the SendGrid email delivery service.
mail.sesAccessKeyId Amazon SES Access Key ID (empty) AWS Access Key ID for Amazon Simple Email Service (SES).
mail.sesSecretAccessKey Amazon SES Secret Access Key (empty) AWS Secret Access Key for Amazon SES.
mail.sesRegion Amazon SES region us-east-1 The AWS region for Amazon SES (e.g. us-east-1, eu-west-1).
mail.mailgunApiKey Mailgun API key (empty) API key for the Mailgun email delivery service.
mail.mailgunDomain Mailgun domain (empty) The sending domain configured in your Mailgun account.
mail.mailgunRegion Mailgun region eu The Mailgun region: us or eu.

8.4.2 Push notification settings

Key Label Default Description
push.enableWebPush Enable Web Push notifications false Enables browser-based Web Push notifications for users.
push.vapidPublicKey VAPID Public Key (empty) The VAPID public key for Web Push. Generated automatically when Web Push is configured.
push.vapidPrivateKey VAPID Private Key (empty) The VAPID private key for Web Push. Keep this secret.
push.vapidSubject VAPID Subject (empty) The VAPID subject identifier, typically a mailto: address or URL for the push service operator.

8.5 Integrations

8.5.1 API settings

Key Label Default Description
api.enableAccess REST API enabled true Enables the REST API for external integrations and third-party applications.
api.apiClientToken API Client Token (empty) An optional token that clients must provide to authenticate API requests. Leave empty for public API access.
api.onlyActiveFaqs API returns only active FAQs true When enabled, the API only returns FAQ entries that have been activated.
api.onlyActiveCategories API returns only active categories true When enabled, the API only returns categories that are active.
api.onlyPublicQuestions API returns only public questions true When enabled, the API only returns questions that are marked as public.
api.ignoreOrphanedFaqs API ignores orphaned FAQs true When enabled, the API excludes FAQ entries that are not assigned to any category.
api.rateLimit.requests API rate limit 100 The maximum number of API requests allowed within the rate limit interval.
api.rateLimit.interval API rate limit interval in seconds 3600 The time window (in seconds) for the API rate limit. Default is 1 hour (3600 seconds).

8.5.2 OAuth 2.0 settings

Key Label Default Description
oauth2.enable Enable OAuth 2.0 authentication false Enables OAuth 2.0 authentication for the REST API, allowing clients to obtain access tokens for API access.
oauth2.accessTokenTTL Access token time to live (seconds) 3600 The lifespan of issued access tokens in seconds. Default is 1 hour (3600 seconds).
oauth2.refreshTokenTTL Refresh token time to live (seconds) 86400 The lifespan of issued refresh tokens in seconds. Default is 24 hours (86400 seconds).
oauth2.authCodeTTL Authorization code time to live (seconds) 300 The lifespan of authorization codes in seconds. Default is 5 minutes (300 seconds).
oauth2.encryptionKey OAuth 2.0 encryption key (empty) A random encryption key used for securing OAuth tokens.
oauth2.privateKeyPath Path to private key for OAuth 2.0 (empty) The file path to the private key used for signing OAuth tokens.
oauth2.publicKeyPath Path to public key for OAuth 2.0 (empty) The file path to the public key used for verifying OAuth tokens.

8.5.3 LDAP settings

Key Label Default Description
ldap.ldapSupport Enable LDAP support? false Enables LDAP/Active Directory authentication.
ldap.ldap_mapping.name LDAP mapping for name cn The LDAP attribute mapped to the user's display name. Use cn for Active Directory.
ldap.ldap_mapping.username LDAP mapping for username samAccountName The LDAP attribute mapped to the username. Use samAccountName for Active Directory.
ldap.ldap_mapping.mail LDAP mapping for email mail The LDAP attribute mapped to the user's email address.
ldap.ldap_mapping.memberOf LDAP mapping for "member of" (empty) The LDAP attribute used for group membership when using LDAP groups.
ldap.ldap_use_domain_prefix LDAP domain prefix true When enabled, the domain prefix (e.g. DOMAIN\username) is used for authentication.
ldap.ldap_options.LDAP_OPT_PROTOCOL_VERSION LDAP protocol version 3 The LDAP protocol version to use. Version 3 is recommended.
ldap.ldap_options.LDAP_OPT_REFERRALS LDAP referrals 0 Controls LDAP referral chasing. Set to 0 to disable (recommended for Active Directory).
ldap.ldap_use_memberOf Enable LDAP group support false Enables group-based access control using the LDAP memberOf attribute.
ldap.ldap_use_sasl Enable LDAP SASL support false Enables SASL (Simple Authentication and Security Layer) for LDAP connections.
ldap.ldap_use_multiple_servers Enable multiple LDAP servers support false Enables failover to multiple LDAP servers.
ldap.ldap_use_anonymous_login Enable anonymous LDAP connections false Allows anonymous (unauthenticated) LDAP connections for user lookups.
ldap.ldap_use_dynamic_login Enable LDAP dynamic user binding false When enabled, the user's own credentials are used to bind to LDAP instead of a service account.
ldap.ldap_dynamic_login_attribute LDAP attribute for dynamic user binding uid The LDAP attribute used to construct the bind DN for dynamic login. Use uid for Active Directory.
ldap.ldap_use_group_restriction Restrict login to specific Active Directory groups false When enabled, only users belonging to specific AD groups can log in.
ldap.ldap_group_allowed_groups Comma-separated list of allowed AD groups (empty) The AD groups allowed to log in. Partial matches are supported.
ldap.ldap_group_auto_assign Automatically assign users to phpMyFAQ groups based on AD membership false When enabled, users are automatically added to phpMyFAQ groups that match their AD group membership.
ldap.ldap_group_mapping JSON mapping of AD groups to phpMyFAQ groups (empty) A JSON object mapping AD group names to phpMyFAQ group names, e.g. {"Domain Admins": "Administrators"}.

8.5.4 Storage settings

Key Label Default Description
storage.useRedisForConfiguration Enable Redis for configuration storage false When enabled, phpMyFAQ stores configuration in Redis for faster access. Falls back to the database when disabled.
storage.redisDsn Redis DSN for configuration storage tcp://redis:6379?database=1 The Redis connection string for configuration storage (e.g. tcp://127.0.0.1:6379?database=1).
storage.redisPrefix Redis key prefix for configuration storage pmf:config: The key prefix used in Redis. Use different prefixes when sharing one Redis server across multiple phpMyFAQ instances.
storage.redisConnectTimeout Redis connection timeout in seconds 1.0 The timeout (in seconds) for establishing a connection to Redis.

8.5.5 Session settings (not yet available in the admin panel)

Key Label Default Description
session.handler Session handler files The session storage backend. Options: files (default filesystem sessions) or redis.
session.redisDsn Redis DSN for sessions tcp://redis:6379?database=0 The Redis connection string for session storage when the session handler is set to redis.

8.5.6 Queue settings (not yet available in the admin panel)

Key Label Default Description
queue.transport Queue transport database The message queue transport backend used for background tasks such as email delivery.

8.6 Online update

8.6.1 Online update settings

Key Label Default Description
upgrade.dateLastChecked Last check for updates (empty) The date when phpMyFAQ last checked for available updates. Set automatically.
upgrade.lastDownloadedPackage Last downloaded package (empty) The filename of the last downloaded update package. Set automatically.
upgrade.onlineUpdateEnabled Online Update enabled false When enabled, phpMyFAQ can download and install updates directly from the admin panel.
upgrade.releaseEnvironment Release Environment (auto-detected) The release channel: stable for production releases or development for nightly builds. Set automatically based on the installed version.