config.default.php 7.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215
  1. <?php
  2. # Do not modify this file, which defines default values,
  3. # but instead edit `./data/config.php` after the install process is completed,
  4. # or edit `./data/config.custom.php` before the install process.
  5. return [
  6. # Set to `development` to get additional error messages,
  7. # or to `production` to get only the most important messages.
  8. 'environment' => 'production',
  9. # Used to make crypto more unique. Generated during install.
  10. 'salt' => '',
  11. # Specify address of the FreshRSS instance,
  12. # used when building absolute URLs, e.g. for WebSub.
  13. # Examples:
  14. # https://example.net/FreshRSS/p/
  15. # https://freshrss.example.net/
  16. 'base_url' => '',
  17. # Specify address of the FreshRSS auto-update server.
  18. 'auto_update_url' => 'https://update.freshrss.org',
  19. # Natural language of the user interface, e.g. `en`, `fr`.
  20. 'language' => 'en',
  21. # Title of this FreshRSS instance in the Web user interface.
  22. 'title' => 'FreshRSS',
  23. # Meta description used when `allow_robots` is true.
  24. 'meta_description' => '',
  25. # Override logo of this FreshRSS instance in the Web user interface.
  26. # It is rendered inside an <a>...</a> element and must be valid HTML or text.
  27. # Example: '<img class="logo" src="https://example.net/Hello.png" alt="Logo Example" /> Hello'
  28. 'logo_html' => '',
  29. # Name of the default user. Also used as the public user for anonymous reading.
  30. 'default_user' => '_',
  31. # Force users to validate their email address. If `true`, an email with a
  32. # validation URL is sent during registration, and users cannot access their
  33. # feed if they didn’t access this URL.
  34. 'force_email_validation' => false,
  35. # Allow or not visitors without login to see the articles
  36. # of the default user.
  37. 'allow_anonymous' => false,
  38. # Allow or not anonymous users to start the refresh process.
  39. 'allow_anonymous_refresh' => false,
  40. # Login method:
  41. # `none` is without password and shows only the default user;
  42. # `form` is a conventional Web login form;
  43. # `http_auth` is an access controlled by the HTTP Web server (e.g. `/FreshRSS/p/i/.htaccess` for Apache)
  44. # if you use `http_auth`, remember to protect only `/FreshRSS/p/i/`,
  45. # and in particular not protect `/FreshRSS/p/api/` if you would like to use the API (different login system).
  46. 'auth_type' => 'form',
  47. # When using http_auth, automatically register any unknown user
  48. 'http_auth_auto_register' => true,
  49. # Optionally, you can specify the $_SERVER key containing the email address used when registering
  50. # the user (e.g. REMOTE_USER_EMAIL).
  51. 'http_auth_auto_register_email_field' => '',
  52. # Allow or not the use of the API, used for mobile apps.
  53. # End-point is https://freshrss.example.net/api/greader.php
  54. # You need to set the user’s API password.
  55. 'api_enabled' => false,
  56. # Allow or not the use of an unsafe login,
  57. # by providing username and password in the login URL:
  58. # https://example.net/FreshRSS/p/i/?c=auth&a=login&u=alice&p=1234
  59. 'unsafe_autologin_enabled' => false,
  60. # Enable or not the use of syslog to log the activity of
  61. # SimplePie, which is retrieving RSS feeds via HTTP requests.
  62. 'simplepie_syslog_enabled' => true,
  63. # Enable or not support of PubSubHubbub.
  64. # /!\ It should NOT be enabled if base_url is not reachable by an external server.
  65. 'pubsubhubbub_enabled' => false,
  66. # Allow or not Web robots (e.g. search engines) in HTML headers.
  67. 'allow_robots' => false,
  68. # If true does nothing, if false restricts HTTP Referer via: meta referrer origin
  69. 'allow_referrer' => false,
  70. # Number of feeds to refresh in parallel from the Web user interface.
  71. # Faster with higher values. Reduce for server with little memory or database issues.
  72. 'nb_parallel_refresh' => 10,
  73. 'limits' => [
  74. # Duration in seconds of the login cookie.
  75. 'cookie_duration' => FreshRSS_Auth::DEFAULT_COOKIE_DURATION,
  76. # Duration in seconds of the SimplePie cache, during which a query to the RSS feed will return the local cached version.
  77. # Especially important for multi-user setups.
  78. # Might be overridden by HTTP response headers.
  79. 'cache_duration' => 800,
  80. # Minimal cache duration (in seconds), overriding HTTP response headers `Cache-Control` and `Expires`,
  81. 'cache_duration_min' => 60,
  82. # Maximal cache duration (in seconds), overriding HTTP response headers `Cache-Control` and `Expires`,
  83. 'cache_duration_max' => 86400,
  84. # SimplePie HTTP request timeout in seconds.
  85. 'timeout' => 20,
  86. # If a user has not used FreshRSS for more than x seconds,
  87. # then its feeds are not refreshed anymore.
  88. 'max_inactivity' => PHP_INT_MAX,
  89. # Max number of feeds for a user.
  90. 'max_feeds' => 131072,
  91. # Max number of categories for a user.
  92. 'max_categories' => 16384,
  93. # Max number of accounts that anonymous users can create (only for Web form login type)
  94. # 0 for an unlimited number of accounts
  95. # 1 is to not allow user registrations (1 is corresponding to the admin account)
  96. 'max_registrations' => 1,
  97. ],
  98. # Options used by cURL when making HTTP requests, e.g. when the SimplePie library retrieves feeds.
  99. # https://php.net/manual/function.curl-setopt
  100. 'curl_options' => [
  101. # Options to disable SSL/TLS certificate check (e.g. for self-signed HTTPS)
  102. //CURLOPT_SSL_VERIFYHOST => 0,
  103. //CURLOPT_SSL_VERIFYPEER => false,
  104. # Options to use a proxy for retrieving feeds.
  105. //CURLOPT_PROXYTYPE => CURLPROXY_HTTP,
  106. //CURLOPT_PROXY => '127.0.0.1',
  107. //CURLOPT_PROXYPORT => 8080,
  108. //CURLOPT_PROXYAUTH => CURLAUTH_BASIC,
  109. //CURLOPT_PROXYUSERPWD => 'user:password',
  110. ],
  111. 'db' => [
  112. # Type of database: `sqlite` or `mysql` or 'pgsql'
  113. 'type' => 'sqlite',
  114. # Database server
  115. 'host' => 'localhost',
  116. # Database user
  117. 'user' => '',
  118. # Database password
  119. 'password' => '',
  120. # Database name
  121. 'base' => '',
  122. # Tables prefix (useful if you use the same database for multiple things)
  123. 'prefix' => 'freshrss_',
  124. # Additional connection string parameters, such as PostgreSQL 'sslmode=??;sslrootcert=??'
  125. # https://www.postgresql.org/docs/current/libpq-connect.html#LIBPQ-PARAMKEYWORDS
  126. 'connection_uri_params' => '',
  127. # Additional PDO parameters, such as offered by MySQL https://php.net/ref.pdo-mysql
  128. 'pdo_options' => [
  129. //PDO::MYSQL_ATTR_SSL_KEY => '/path/to/client-key.pem',
  130. //PDO::MYSQL_ATTR_SSL_CERT => '/path/to/client-cert.pem',
  131. //PDO::MYSQL_ATTR_SSL_CA => '/path/to/ca-cert.pem',
  132. ],
  133. ],
  134. # Configuration to send emails.
  135. # These options are basically a mapping of the PHPMailer class attributes
  136. # from the PHPMailer library.
  137. #
  138. # See https://phpmailer.github.io/PHPMailer/classes/PHPMailer-PHPMailer-PHPMailer.html#properties
  139. 'mailer' => 'mail', // 'mail' or 'smtp'
  140. 'smtp' => [
  141. 'hostname' => '', // the domain used in the Message-ID header
  142. 'host' => 'localhost', // the SMTP server address
  143. 'port' => 25,
  144. 'auth' => false,
  145. 'auth_type' => '', // 'CRAM-MD5', 'LOGIN', 'PLAIN', 'XOAUTH2' or ''
  146. 'username' => '',
  147. 'password' => '',
  148. 'secure' => '', // '', 'ssl' or 'tls'
  149. 'from' => 'root@localhost',
  150. ],
  151. # List of enabled FreshRSS extensions.
  152. 'extensions_enabled' => [
  153. ],
  154. # Extensions configurations
  155. 'extensions' => [],
  156. # Disable self-update,
  157. 'disable_update' => false,
  158. # Trusted IPs (e.g. of last proxy) that are allowed to send unsafe HTTP headers.
  159. # The connection IP used during FreshRSS setup is automatically added to this list.
  160. # Will be checked against CONN_REMOTE_ADDR (if available, to be robust even when using Apache mod_remoteip)
  161. # or REMOTE_ADDR environment variable.
  162. # This array can be overridden by the TRUSTED_PROXY environment variable.
  163. # Read the documentation before configuring this https://freshrss.github.io/FreshRSS/en/admins/09_AccessControl.html
  164. 'trusted_sources' => [
  165. '127.0.0.0/8',
  166. '::1/128',
  167. ]
  168. ];