Frio - bugfix - don't show new event button if the button isn't available
[friendica.git/.git] / doc / Settings.md
1 # Settings
2
3 * [Home](help)
4
5 If you are the admin of a Friendica node, you have access to the so called **Admin Panel** where you can configure your Friendica node.
6
7 On the front page of the admin panel you will see a summary of information about your node.
8 These information include the amount of messages currently being processed in the queues.
9 The first number is the number of messages which could not been delivered for various reasons.
10 They will be resend later.
11 You can have a quick glance into that second queus in the "Inspect Queue" section of the admin panel.
12 The second number represents the current number of jobs for the background workers.
13 These worker tasks are prioritised and are done accordingly.
14
15 Then you get an overview of the accounts on your node, which can be moderated in the "Users" section of the panel.
16 As well as an overview of the currently active addons
17 The list is linked, so you can have quick access to the Addon settings.
18 And finally you are informed about the version of Friendica you have installed.
19 If you contact the devs with a bug or problem, please also mention the version of your node.
20
21 The admin panel is seperated into subsections accessible from the side bar of the panel.
22
23 ## Site
24
25 This section of the admin panel contains the main configuration of your Friendica node.
26 It is separated into several sub-section beginning with the basic settings at the top, advancing towards the bottom of the page.
27
28 Most configuration options have a help text in the admin panel.
29 Therefore this document does not yet cover all the options
30
31 ### Basic Settings
32
33 #### Banner/Logo
34
35 Set the content for the site banner.
36 The default logo is the Friendica logo and name.
37 You may wish to provide HTML/CSS to style and/or position this content, as it may not be themed by default.
38
39 #### Language
40
41 This option will set the default language for the node.
42 It is used as fall back setting should Friendica fail to recognize the visitors preferences and can be overwritten by user settings.
43
44 The Friendica community offers some translations.
45 Some more compleate then others.
46 See [this help page](/help/translations) for more information about the translation process.
47
48 #### System Theme
49
50 Choose a theme to be the default system theme.
51 This can be over-ridden by user profiles.
52 Default theme is "duepunto zero" at the moment.
53
54 You may also want to set a special theme for mobile interfaces.
55 Which may or may not be neccessary depending of the mobile friendlyness of the desktop theme you have chosen.
56 The `vier` theme for instance is mobile friendly.
57
58 ### Registration
59
60 #### Register policy
61
62 With this drop down selector you can set the nodes registration policy.
63 You can chose between the following modes:
64
65 * **open**: Everybody can register a new account and start using it right away.
66 * **requires approval**: Everybody can register a new account, but the admin has to approve it before it can be used.
67 * **closed**: No new registrations are possible.
68
69 ##### Invitation based registry
70
71 Additionally to the setting in the admin panel, you can devide if registrations are only possible using an invitation code or not.
72 To enable invitation based registration, you have to set the `invitation_only` setting in the [config/local.ini.php](/help/Config) file.
73 If you want to use this method, the registration policy has to be set to either *open* or *requires approval*.
74
75 #### Check Full Names
76
77 You may find a lot of spammers trying to register on your site.
78 During testing we discovered that since these registrations were automatic, the "Full Name" field was often set to just an account name with no space between first and last name.
79 If you would like to support people with only one name as their full name, you may change this setting to true.
80 Default is false.
81
82 #### OpenID
83
84 By default, OpenID may be used for both registration and logins.
85 If you do not wish to make OpenID facilities available on your system (at all), set 'no_openid' to true.
86 Default is false.
87
88 #### Multiple Registrations
89
90 The ability to create "Pages" requires a person to register more than once.
91 Your site configuration can block registration (or require approval to register).
92 By default, logged in users can register additional accounts for use as pages.
93 These will still require approval if the registration policy is set to *require approval*
94 You may prohibit logged in users from creating additional accounts by setting *block multible registrations* to true.
95 Default is false.
96
97 ### File upload
98
99 #### Maximum Image Size
100
101 Maximum size in bytes of uploaded images.
102 The default is set to 0, which means no limits.
103
104 ### Policies
105
106 #### Global Directory
107
108 This configures the URL to update the global directory, and is supplied in the default configuration.
109 The undocumented part is that if this is not set, the global directory is completely unavailable to the application.
110 This allows a private community to be completely isolated from the global network.
111
112 #### Force Publish
113
114 By default, each user can choose on their Settings page whether or not to have their profile published in the site directory.
115 This setting forces all profiles on this site to be listed in the site directory and there is no option provided to the user to change it.
116 Default is false.
117
118 #### Block Public
119
120 Set to true to block public access to all otherwise public personal pages on this site unless you are currently logged in.
121 This blocks the viewing of profiles, friends, photos, the site directory and search pages to unauthorised persons.
122 A side effect is that entries from this site will not appear in the global directory.
123 We recommend specifically disabling that also (setting is described elsewhere on this page).
124 Note: this is specifically for sites that desire to be "standalone" and do not wish to be connected to any other Friendica sites.
125 Unauthorised persons will also not be able to request friendship with site members.
126 Default is false.
127 Available in version 2.2 or greater.
128
129 #### Community pages for Visitors
130
131 The community pages show all public postings, separated by their origin being local or the entire network.
132 With this setting you can select which community pages will be shown to visitors of your Friendica node.
133 Your local users will always have access to both pages.
134
135 **Note**: Several settings, like users hiding their contacts from the public will prevent the postings to show up on the global community page.
136
137 #### Allowed Friend Domains
138
139 Comma separated list of domains which are allowed to establish friendships with this site.
140 Wildcards are accepted.
141 (Wildcard support on Windows platforms requires PHP5.3).
142 By default, any (valid) domain may establish friendships with this site.
143
144 This is useful if you want to setup a closed network for educational groups, cooperations and similar communities that don't want to commuicate with the rest of the network.
145
146 #### Allowed Email Domains
147
148 Comma separated list of domains which are allowed in email addresses for registrations to this site.
149 This can lockout those who are not part of this organisation from registering here.
150 Wildcards are accepted.
151 (Wildcard support on Windows platforms requires PHP5.3).
152 By default, any (valid) email address is allowed in registrations.
153
154 #### Allow Users to set remote_self
155
156 If you enable the `Allow Users to set remote_self` users can select Atom feeds from their contact list being their *remote self* in the advanced contact settings.
157 Which means that postings by the remote self are automatically reposted by Friendica in their names.
158
159 This feature can be used to let the user mirror e.g. blog postings into their Friendica postings.
160 It is disabled by default, as it causes additional load on the server and may be misused to distribute SPAM.
161
162 As admin of the node you can also set this flag directly in the database.
163 Before doing so, you should be sure you know what you do and have a backup of the database.
164
165 #### Explicit Content
166
167 If you are running a node with explicit content, you can announce this with this option.
168 When checked an information flag will be set in the published information about your node.
169 (Should *Publish Server Information* be enabled.)
170
171 Additionally a note will be displayed on the registration page for new users.
172
173 ### Advanced
174
175 #### Proxy Configuration Settings
176
177 If your site uses a proxy to connect to the internet, you may use these settings to communicate with the outside world.
178 The outside world still needs to be able to see your website, or this will not be very useful.
179
180 #### Network Timeout
181
182 How long to wait on a network communication before timing out.
183 Value is in seconds.
184 Default is 60 seconds.
185 Set to 0 for unlimited (not recommended).
186
187 #### Verify SSL Certitificates
188
189 By default Friendica allows SSL communication between websites that have "self-signed" SSL certificates.
190 For the widest compatibility with browsers and other networks we do not recommend using self-signed certificates, but we will not prevent you from using them.
191 SSL encrypts all the data transmitted between sites (and to your browser).
192 This allows you to have completely encrypted communications, and also protect your login session from hijacking.
193 Self-signed certificates can be generated for free, without paying top-dollar for a website SSL certificate.
194 However these aren't looked upon favourably in the security community because they can be subject to so-called "man-in-the-middle" attacks.
195 If you wish, you can turn on strict certificate checking.
196 This will mean you cannot connect (at all) to self-signed SSL sites.
197
198 #### Check upstream version
199
200 If this option is enabled your Friendica node will check the upstream version once per day from the github repository.
201 You can select if the stable version or the development version should be checked out.
202 If there is a new version published, you will get notified in the admin panel summary page.
203
204 ### Auto Discovered Contact Directory
205
206 ### Performance
207
208 ### Worker
209
210 This section allows you to configure the background process that is triggered by the `cron` job that was created during the installation.
211 The process does check the available system resources before creating a new worker for a task.
212 Because of this, it may happen that the maximum number of worker processes you allow will not be reached.
213
214 If your server setup does not allow you to use the `proc_open` function of PHP, please disable it in this section.
215
216 The tasks for the background process have priorities.
217 To guarantee that important tasks are executed even though the system has a lot of work to do, it is useful to enable the *fastlane*.
218
219 Should you not be able to run a cron job on your server, you can also activate the *frontend* worker.
220 If you have done so, you can call `example.com/worker` (replace example.com with your actual domain name) on a regular basis from an external servie.
221 This will then trigger the execution of the background process.
222
223 ### Relocate
224
225 ## Users
226
227 This section of the panel let the admin control the users registered on the node.
228
229 If you have selected "Requires approval" for the *Register policy* in the general nodes configuration, new registrations will be listed at the top of the page.
230 There the admin can then approve or disapprove the request.
231
232 Below the new registration block the current accounts on the Friendica node are listed.
233 You can sort the user list by name, email, registration date, date of last login, date of last posting and the account type.
234 Here the admin can also block/unblock users from accessing the node or delete the accounts entirely.
235
236 In the last section of the page admins can create new accounts on the node.
237 The password for the new account will be send by email to the choosen email address.
238
239 ## Addons
240
241 This page is for selecting and configuration of extensions for Friendica which have to be placed into the `/addon` subdirectory of your Friendica installation.
242 You are presented with a long list of available addons.
243 The name of each addon is linked to a separate page for that addon which offers more informations and configuration possibilities.
244 Also shown is the version of the addon and an indicator if the addon is currently active or not.
245
246 When you update your node and the addons they may have to be reloaded.
247 To simplify this process there is a button at the top of the page to reload all active Addons.
248
249 ## Themes
250
251 The Themes section of the admin panel works similar to the Addons section but let you control the themes on your Friendica node.
252 Each theme has a dedicated subpage showing the current status, some information about the theme and a screen-shot of the Friendica interface using the theme.
253 Should the theme offer special settings, admins can set a global default value here.
254
255 You can activate and deactivate themes on their dedicated sub-pages thus making them available for the users of the node.
256 To select a default theme for the Friendica node, see the *Site* section of the admin panel.
257
258 ## Additional Features
259
260 There are several optional features in Friendica like the *dislike* button.
261 In this section of the admin panel you can select a default setting for your node and eventually fix it, so users cannot change the setting anymore.
262
263 ## DB Updates
264
265 Should the database structure of Friendica change, it will apply the changes automatically.
266 In case you are suspecious that the update might not have worked, you can use this section of the admin panel to check the situation.
267
268 ## Inspect Queue
269
270 In the admin panel summary there are two numbers for the message queues.
271 The second number represents messages which could not be delivered and are queued for later retry.
272 If this number goes sky-rocking you might ask yourself which receopiant is not receiving.
273
274 Behind the inspect queue section of the admin panel you will find a list of the messages that could not be delivered.
275 The listing is sorted by the receipiant name so identifying potential broken communication lines should be simple.
276 These lines might be broken for various reasons.
277 The receiving end might be off-line, there might be a high system load and so on.
278
279 Don't panic!
280 Friendica will not queue messages for all time but will sort out *dead* nodes automatically after a while and remove messages from the queue then.
281
282 ## Server Blocklist
283
284 This page allows to block all communications (inbound and outbound) with a specific domain name.
285 Each blocked domain entry requires a reason that will be displayed on the [friendica](/friendica) page.
286 Matching is exact, blocking a domain doesn't block subdomains.
287
288 ## Federation Statistics
289
290 The federation statistics page gives you a short summery of the nodes/servers/pods of the decentralized social network federation your node knows.
291 These numbers are not compleate and only contain nodes from networks Friendica federates directly with.
292
293 ## Delete Item
294
295 Using this page an admin can delete postings and eventually associated discussion threads from their Friendica node.
296 To do so, they need to know the GUID of the posting.
297 This can be found on the `/display` page of the posting, it is the last part of the URL displayed in the browsers navigation bar.
298 You can get to the `/display` page by following the *Link to source*.
299
300 ## Addon Features
301
302 Some of the addons you can install for your Friendica node have settings which have to be set by the admin.
303 All those addons will be listed in this area of the admin panels side bar with their names.
304
305 ## Logs
306
307 The log section of the admin panel is seperated into two pages.
308 On the first, following the "log" link, you can configure how much Friendica shall log.
309 And on the second you can read the log.
310
311 You should not place your logs into any directory that is accessible from the web.
312 If you have to, and you are using the default configuration from Apache, you should choose a name for the logfile ending in ``.log`` or ``.out``.
313 Should you use another web server, please make sure that you have the correct accessrules in place so that your log files are not accessible.
314
315 There are five different log levels: Normal, Trace, Debug, Data and All.
316 Specifying different verbosities of information and data written out to the log file.
317 Normally you should not need to log at all.
318 The *DEBUG* level will show a good deal of information about system activity but will not include detailed data.
319 In the *ALL* level Friendica will log everything to the file.
320 But due to the volume of information we recommend only enabling this when you are tracking down a specific problem.
321
322 **The amount of data can grow the filesize of the logfile quickly**.
323 You should set up some kind of [log rotation](https://en.wikipedia.org/wiki/Log_rotation) to keep the log file from growing too big.
324
325 **Known Issues**: The filename ``friendica.log`` can cause problems depending on your server configuration (see [issue 2209](https://github.com/friendica/friendica/issues/2209)).
326
327 By default PHP warnings and error messages are supressed.
328 If you want to enable those, you have to activate them in the ``config/local.ini.php`` file.
329 Use the following settings to redirect PHP errors to a file.
330
331 Config:
332
333         error_reporting(E_ERROR | E_WARNING | E_PARSE );
334         ini_set('error_log','php.out');
335         ini_set('log_errors','1');
336         ini_set('display_errors', '0');
337
338 This will put all PHP errors in the file php.out (which must be writeable by the webserver).
339 Undeclared variables are occasionally referenced in the program and therefore we do not recommend using `E_NOTICE` or `E_ALL`.
340 The vast majority of issues reported at these levels are completely harmless.
341 Please report to the developers any errors you encounter in the logs using the recommended settings above.
342 They generally indicate issues which need to be resolved.
343
344 If you encounter a blank (white) page when using the application, view the PHP logs - as this almost always indicates an error has occurred.
345
346 ## Diagnostics
347
348 In this section of the admin panel you find two tools to investigate what Friendica sees for certain ressources.
349 These tools can help to clarify communication problems.
350
351 For the *probe address* Friendica will display information for the address provided.
352
353 With the second tool *check webfinger* you can request information about the thing identified by a webfinger (`someone@example.com`).
354
355 # Exceptions to the rule
356
357 There are four exceptions to the rule, that all the config will be read from the data base.
358 These are the data base settings, the admin account settings, the path of PHP and information about an eventual installation of the node in a sub-directory of the (sub)domain.
359
360 ## DB Settings
361
362 With the following settings, you specify the data base server, the username and passwort for Friendica and the database to use.
363
364     $db_host = 'your.db.host';
365     $db_user = 'db_username';
366     $db_pass = 'db_password';
367     $db_data = 'database_name';
368
369 ## Admin users
370
371 You can set one, or more, accounts to be *Admin*.
372 By default this will be the one account you create during the installation process.
373 But you can expand the list of email addresses by any used email address you want.
374 Registration of new accounts with a listed email address is not possible.
375
376     [config]
377     admin_email = you@example.com, buddy@example.com
378
379 ## PHP Path
380
381 Some of Friendicas processes are running in the background.
382 For this you need to specify the path to the PHP binary to be used.
383
384     [config]
385     php_path = {{$phpath}}
386
387 ## Subdirectory configuration
388
389 It is possible to install Friendica into a subdirectory of your webserver.
390 We strongly discourage you from doing so, as this will break federation to other networks (e.g. Diaspora, GNU Socia, Hubzilla)
391 Say you have a subdirectory for tests and put Friendica into a further subdirectory, the config would be:
392
393     [system]
394     urlpath = tests/friendica
395
396 ## Other exceptions
397
398 Furthermore there are some experimental settings, you can read-up in the [Config values that can only be set in config/local.ini.php](help/Config) section of the documentation.
399