You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

318 lines
9.5KB

  1. <?php
  2. /**
  3. * This configuration file is only provided to document the different
  4. * configuration options and their usage.
  5. *
  6. * DO NOT COMPLETELY BASE YOUR CONFIGURATION FILE ON THIS SAMPLE. THIS MAY BREAK
  7. * YOUR INSTANCE. Instead, manually copy configuration switches that you
  8. * consider important for your instance to your working ``config.php``, and
  9. * apply configuration options that are pertinent for your instance.
  10. *
  11. * This file is used to generate the configuration documentation.
  12. * Please consider following requirements of the current parser:
  13. * * all comments need to start with `/**` and end with ` *\/` - each on their
  14. * own line
  15. * * add a `@see CONFIG_INDEX` to copy a previously described config option
  16. * also to this line
  17. * * everything between the ` *\/` and the next `/**` will be treated as the
  18. * config option
  19. * * use RST syntax
  20. */
  21. $CONFIG = array(
  22. /**
  23. * Your list of trusted domains that users can log into. Specifying trusted
  24. * domains prevents host header poisoning. Do not remove this, as it performs
  25. * necessary security checks.
  26. * You can specify:
  27. *
  28. * - the exact hostname of your host or virtual host, e.g. demo.example.org.
  29. * - the exact hostname with permitted port, e.g. demo.example.org:443.
  30. * This disallows all other ports on this host
  31. * - use * as a wildcard, e.g. ubos-raspberry-pi*.local will allow
  32. * ubos-raspberry-pi.local and ubos-raspberry-pi-2.local
  33. */
  34. 'trusted_domains' =>
  35. array (
  36. 'localhost',
  37. '{{inventory_hostname}}',
  38. ),
  39. /**
  40. * Where user files are stored. The SQLite database is also stored here, when
  41. * you use SQLite.
  42. *
  43. * Default to ``data/`` in the Nextcloud directory.
  44. */
  45. 'datadirectory' => '{{nextcloud_data_directory}}',
  46. /**
  47. * Identifies the database used with this installation. See also config option
  48. * ``supportedDatabases``
  49. *
  50. * Available:
  51. * - sqlite (SQLite3)
  52. * - mysql (MySQL/MariaDB)
  53. * - pgsql (PostgreSQL)
  54. *
  55. * Defaults to ``sqlite``
  56. */
  57. 'dbtype' => '{{ nextcloud_database_type }}',
  58. /**
  59. * Your host server name, for example ``localhost``, ``hostname``,
  60. * ``hostname.example.com``, or the IP address. To specify a port use
  61. * ``hostname:####``; to specify a Unix socket use
  62. * ``localhost:/path/to/socket``.
  63. */
  64. 'dbhost' => '{{ nextcloud_database_host }}',
  65. /**
  66. * The name of the Nextcloud database, which is set during installation. You
  67. * should not need to change this.
  68. */
  69. 'dbname' => '{{ nextcloud_database_name }}',
  70. /**
  71. * The user that Nextcloud uses to write to the database. This must be unique
  72. * across Nextcloud instances using the same SQL database. This is set up during
  73. * installation, so you shouldn't need to change it.
  74. */
  75. 'dbuser' => '{{ nextcloud_database_user }}',
  76. /**
  77. * The password for the database user. This is set up during installation, so
  78. * you shouldn't need to change it.
  79. */
  80. 'dbpassword' => '{{ nextcloud_database_password }}',
  81. /**
  82. * Prefix for the Nextcloud tables in the database.
  83. *
  84. * Default to ``oc_``
  85. */
  86. 'dbtableprefix' => '',
  87. /**
  88. * Indicates whether the Nextcloud instance was installed successfully; ``true``
  89. * indicates a successful installation, and ``false`` indicates an unsuccessful
  90. * installation.
  91. *
  92. * Defaults to ``false``
  93. */
  94. 'installed' => false,
  95. /**
  96. * During setup, if requirements are met (see below), this setting is set to true
  97. * and MySQL can handle 4 byte characters instead of 3 byte characters.
  98. *
  99. * If you want to convert an existing 3-byte setup into a 4-byte setup please
  100. * set the parameters in MySQL as mentioned below and run the migration command:
  101. * ./occ db:convert-mysql-charset
  102. * The config setting will be set automatically after a successful run.
  103. *
  104. * Consult the documentation for more details.
  105. *
  106. * MySQL requires a special setup for longer indexes (> 767 bytes) which are
  107. * needed:
  108. *
  109. * [mysqld]
  110. * innodb_large_prefix=ON
  111. * innodb_file_format=Barracuda
  112. * innodb_file_per_table=ON
  113. *
  114. * Tables will be created with
  115. * * character set: utf8mb4
  116. * * collation: utf8mb4_bin
  117. * * row_format: compressed
  118. *
  119. * See:
  120. * https://dev.mysql.com/doc/refman/5.7/en/charset-unicode-utf8mb4.html
  121. * https://dev.mysql.com/doc/refman/5.7/en/innodb-parameters.html#sysvar_innodb_large_prefix
  122. * https://mariadb.com/kb/en/mariadb/xtradbinnodb-server-system-variables/#innodb_large_prefix
  123. * http://www.tocker.ca/2013/10/31/benchmarking-innodb-page-compression-performance.html
  124. * http://mechanics.flite.com/blog/2014/07/29/using-innodb-large-prefix-to-avoid-error-1071/
  125. */
  126. 'mysql.utf8mb4' => true,
  127. /**
  128. * User Experience
  129. *
  130. * These optional parameters control some aspects of the user interface. Default
  131. * values, where present, are shown.
  132. */
  133. /**
  134. * This sets the default language on your Nextcloud server, using ISO_639-1
  135. * language codes such as ``en`` for English, ``de`` for German, and ``fr`` for
  136. * French. It overrides automatic language detection on public pages like login
  137. * or shared items. User's language preferences configured under "personal ->
  138. * language" override this setting after they have logged in.
  139. *
  140. * Defaults to ``en``
  141. */
  142. 'default_language' => '{{nextcloud_default_language}}',
  143. /**
  144. * With this setting a language can be forced for all users. If a language is
  145. * forced, the users are also unable to change their language in the personal
  146. * settings. If users shall be unable to change their language, but users have
  147. * different languages, this value can be set to ``true`` instead of a language
  148. * code.
  149. *
  150. * Defaults to ``false``
  151. */
  152. {% if nextcloud_force_language %}
  153. 'force_language' => '{{nextcloud_force_language}}',
  154. {% endif %}
  155. /**
  156. * Set the default app to open on login. Use the app names as they appear in the
  157. * URL after clicking them in the Apps menu, such as documents, calendar, and
  158. * gallery. You can use a comma-separated list of app names, so if the first
  159. * app is not enabled for a user then Nextcloud will try the second one, and so
  160. * on. If no enabled apps are found it defaults to the Files app.
  161. *
  162. * Defaults to ``files``
  163. */
  164. 'defaultapp' => '{{nextcloud_defaultapp}}',
  165. /**
  166. * Use this configuration parameter to specify the base URL for any URLs which
  167. * are generated within Nextcloud using any kind of command line tools (cron or
  168. * occ). The value should contain the full base URL:
  169. * ``https://www.example.com/nextcloud``
  170. *
  171. * Defaults to ``''`` (empty string)
  172. */
  173. 'overwrite.cli.url' => 'http://{{inventory_hostname}}',
  174. /**
  175. * To have clean URLs without `/index.php` this parameter needs to be configured.
  176. *
  177. * This parameter will be written as "RewriteBase" on update and installation of
  178. * Nextcloud to your `.htaccess` file. While this value is often simply the URL
  179. * path of the Nextcloud installation it cannot be set automatically properly in
  180. * every scenario and needs thus some manual configuration.
  181. *
  182. * In a standard Apache setup this usually equals the folder that Nextcloud is
  183. * accessible at. So if Nextcloud is accessible via "https://mycloud.org/nextcloud"
  184. * the correct value would most likely be "/nextcloud". If Nextcloud is running
  185. * under "https://mycloud.org/" then it would be "/".
  186. *
  187. * Note that the above rule is not valid in every case, as there are some rare setup
  188. * cases where this may not apply. However, to avoid any update problems this
  189. * configuration value is explicitly opt-in.
  190. *
  191. * After setting this value run `occ maintenance:update:htaccess`. Now, when the
  192. * following conditions are met Nextcloud URLs won't contain `index.php`:
  193. *
  194. * - `mod_rewrite` is installed
  195. * - `mod_env` is installed
  196. *
  197. * Defaults to ``''`` (empty string)
  198. */
  199. 'htaccess.RewriteBase' => '/',
  200. /**
  201. * Checks an app before install whether it uses private APIs instead of the
  202. * proper public APIs. If this is set to true it will only allow to install or
  203. * enable apps that pass this check.
  204. *
  205. * Defaults to ``false``
  206. */
  207. 'appcodechecker' => true,
  208. /**
  209. * Check if Nextcloud is up-to-date and shows a notification if a new version is
  210. * available.
  211. *
  212. * Defaults to ``true``
  213. */
  214. 'updatechecker' => true,
  215. /**
  216. * Logging
  217. */
  218. /**
  219. * By default the Nextcloud logs are sent to the ``nextcloud.log`` file in the
  220. * default Nextcloud data directory.
  221. * If syslogging is desired, set this parameter to ``syslog``.
  222. * Setting this parameter to ``errorlog`` will use the PHP error_log function
  223. * for logging.
  224. *
  225. * Defaults to ``file``
  226. */
  227. 'log_type' => 'file',
  228. /**
  229. * Log file path for the Nextcloud logging type.
  230. *
  231. * Defaults to ``[datadirectory]/nextcloud.log``
  232. */
  233. 'logfile' => '/var/log/nextcloud/nextcloud.log',
  234. /**
  235. * Loglevel to start logging at. Valid values are: 0 = Debug, 1 = Info, 2 =
  236. * Warning, 3 = Error, and 4 = Fatal. The default value is Warning.
  237. *
  238. * Defaults to ``2``
  239. */
  240. 'loglevel' => 2,
  241. /**
  242. * The timezone for logfiles. You may change this; see
  243. * http://php.net/manual/en/timezones.php
  244. *
  245. * Defaults to ``UTC``
  246. */
  247. 'logtimezone' => 'UTC',
  248. /**
  249. * Apps
  250. *
  251. * Options for the Apps folder, Apps store, and App code checker.
  252. */
  253. /**
  254. * When enabled, admins may install apps from the Nextcloud app store.
  255. *
  256. * Defaults to ``true``
  257. */
  258. 'appstoreenabled' => false,
  259. /**
  260. * Use the ``apps_paths`` parameter to set the location of the Apps directory,
  261. * which should be scanned for available apps, and where user-specific apps
  262. * should be installed from the Apps store. The ``path`` defines the absolute
  263. * file system path to the app folder. The key ``url`` defines the HTTP Web path
  264. * to that folder, starting from the Nextcloud webroot. The key ``writable``
  265. * indicates if a Web server can write files to that folder.
  266. */
  267. 'apps_paths' => array(
  268. array(
  269. 'path'=> '/var/www/nextcloud/apps',
  270. 'url' => '/apps',
  271. 'writable' => false,
  272. ),
  273. ),
  274. /**
  275. * Disable the web based updater
  276. */
  277. 'upgrade.disable-web' => true,
  278. );