There are some settings which are common across all backup profiles. Most of these settings have to do with the way the application interacts with your server environment. This is what you can configure in the System Configuration page. This page is organised in different tabs.
Tip | |
---|---|
If you accidentally modify any of these settings to a value
that doesn't work on your server and you can no longer log in to
Akeeba Solo you can still recover from this error without losing
your backups or your backup profile settings. Simply delete the
file Since Akeeba Backup uses the native user management system of the site it runs inside, should you be unable to log in to your site please consult the support forums of your site's script (e.g. WordPress or Joomla!) |
The Application Configuration tab allows you to set up the basic configuration parameters for Akeeba Solo that depend on your server environment.
Important | |
---|---|
Some of the following options are only relevant to Akeeba Solo (standalone). If you are using Akeeba Backup you will not see the options that are not necessary, such as the database setup section. |
System Configuration – Application Configuration
Akeeba Solo and Akeeba Backup for WordPress have a brightly colored theme enabled by default. However, we also offer an optional, darker color theme suitable for working in low light environments. If you set this option to Yes the interface will always be rendered in the darker color theme. If you set this option to Auto the color theme will switch automatically between light and dark depending on your device's system-wide dark mode preference.
Please note that the Auto mode is implemented by using a CSS media query which is currently only supported on Safari 12.1 or later. It will enable our software's Dark Mode when your device is also set to Dark Mode. Please read this WebKit blog page if you are curious about how it works.At the time of this writing (June 2019) the media query in question is a CSS Working Group proposal which has not been formally accepted. Moreover, we are not aware of any other browsers or operating systems planning support for this feature.
When enabled, backup profile configuration settings are stored in the database encrypted with the industry-standard AES-128 encryption. The encryption key is written in a file. This makes it much harder for an attacker to get hold of any sensitive information stored in the backup profile configuration using a read-only SQL injection attack and for this reason it's recommended that you leave this option enabled.
The only reason why you might want to temporarily disable this is that your CLI version of PHP does not support encryption and you can't get the scheduled backups to work. It's recommended that in this case you ask your host to enable the PHP OpenSSL module in the CLI version of PHP you are using and then re-enable Use Encryption.
When doing AJAX requests the server-side code runs the
PHP flush()
function to indicate to the web
server that it should start sending data to the browser. We
have seen a single server in nearly 20 years where this is a
problem, i.e. running flush() causes it to crash. If you are
one of the small handful of people on such a misconfigured
server, set this option to Yes. Otherwise, leave it at its
default No setting.
Please select the timezone where your server is located in. Please note that this may be different than the timezone you or your host are in. For example, a client in Germany is using a host based in the United Kingdom who has a server in Dallas, USA. The timezone of the server is the one for Dallas, USA (which is America/Chicago – you need a map to understand why). If you are unsure, ask your host. That's probably the easiest question you can make to them.
When this option is set to No the time the backup started is shown in GMT timezone in the Manage Backups page. If you set it to Yes the time will be shown in the Server timezone as set in the option above.
Choose the suffix to append to the backup time in the
Manage Backups page. None
will result in no
suffix. We don't recommend it as it's not immediately obvious
which timezone is being used. Time Zone
is
the recommended and default option. It will print the human
readable timezone setting, e.g. EEST for Eastern Europe Summer
Time, PDT for Pacific Daylight Time and so on. GMT
Offset
will instead display the timezone as an offset
from GMT, for example GMT+3 for Eastern Europe Summer Time or
GMT-7 for Pacific Daylight Time.
The timezone which will be used for all of the backup naming variables processed by Akeeba Backup / Akeeba Solo. These are variables such as [DATE] and [TIME] which you can use in the filename template of backup archives, the backup output directory name, the front-end and remote backup emails and elsewhere.
The default option is called Use server
timezone
and it will use the setting of the server
timezone filed above. If that is not set it will fall back to
GMT (Greenwich Mean Time).
We recommend setting this option to the timezone the people responsible for taking and restoring backups are most familiar with. If you are the only Super User use the timezone where you normally live in.
Choose whether Akeeba Backup for WordPress will override the time settings you've configured in the Fine-tuning section of the backup profile for backups executed through WordPress' WP-CRON. The goal is to minimise the "dead time" between each backup step's execution, therefore making your backup faster. Please consult the WP-CRON Scheduling documentation.
Using “No” will not override anything. Use this if you want or need to manually set up the timing settings of the backup in the backup profile's Fine-tuning page.
Using “Optimistic” will take into consideration
WordPress' configured time between consecutive WP-CRON
executions, the PHP maximum execution time (if any is set),
and your server's maximum CPU usage time per thread
(ulimit -t
, only available if you are on a Linux,
*BSD or macOS server) — or at least it will
try to retrieve this information IF AND
ONLY IF your server allows it to do that. It will then figure
out the amount of time which satisfies all three limits,
capping it to 60 seconds at a maximum. This works for most
servers and sites, making the backup run faster. However, it
may cause a backup failure on some servers.
Using “Conservative” will run the same heuristics as “Optimistic” but use half of the calculated time. This makes it less likely that your backup will time out, at the expense of the backup being slower.
Should I give users restoring a site the option to delete everything before extracing an archive? This option only applies to the Professional version of our software.
The “Delete everything before extraction” option will be shown when restoring a backup archive through Akeeba Solo / Akeeba Backup for WordPress. If the user selects this option ALL files and folders EXCEPT for the backup archive and restoration script will be permanently deleted before the backup archive is extracted. Since we cannot possibly know which folders “belong to your site” or even which folders are present in the backup archive this can result in permanent, irreversible loss of data such as: folders excluded from the backup; root folders of other sites or subdomains which are present under the site's root; user data; any files not included in the backup you are restoring. This option is THE NUCLEAR BUTTON. This is why it's not enabled by default and why we ask you NOT to use it and offer zero support whatsoever if you do use it and something bad happens.
WARNING! THIS IS EXTREMELY DANGEROUS. IF YOU USE THIS FEATURE DURING RESTORATION YOU ARE WAIVING ANY RIGHT TO REQUEST SUPPORT AND ASSUME ALL RESPONSIBILITY AND LIABILITY.
This is the full URL to Akeeba Solo itself. Akeeba Solo
tries to automatically detect it. On about 5% of servers out
there this is not possible. If you see something strange here,
please correct it. You need a full URL, e.g.
http://www.example.com/solo
Akeeba Solo will automatically log you out if you have not interacted with it for that much time. The default setting (1440 minutes) is one day. We recommend you to use a lower setting for security reasons. Something between 30 and 60 minutes is ideal.
Changes how the Start date/time of backups is displayed in the Manage Backups page. Leave blank to use the default formatting (Year-Month-Day). You can use the formatting options of PHP's date function, see: http://www.php.net/manual/en/function.date.php
Akeeba Solo needs to write to certain files (e.g. your configuration file) and modify the directory permissions to make it possible for backup files to be written. This is the job of the filesystem driver. You have the following options:
Direct file writes. Akeeba Solo writes to the files directly. This is the best option for most high-end hosts and dedicated servers. On many shared hosts it is unlikely that it will work correctly.
FTP Mode - File Transfer Protocol. Akeeba Solo will try to write to the files directly. If it is not possible it will connect to your site through FTP and attempt to complete the file write using the FTP connection. This is the best option for most shared hosts.
SFTP Mode - Secure File Transfer Protocol (over SSH). Akeeba Solo will try to write to the files directly. If it is not possible it will connect to your site through SFTP and attempt to complete the file write using the SFTP connection.
Please note that FTP and SFTP are very different protocols. The former is a fairly simple protocol that is supported by almost every server out there. The latter is a more secure (and faster) method, but it's not supported by all servers and does require your host to provide the SSH2 PHP module. Akeeba Solo tells you if the SSH2 module is available in the Recommended Settings section of the main page of its web installer (discussed a little earlier in this documentation).
If you choose the FTP or SFTP mode you will see the following configuration parameters as well.
The hostname or IP address of your (S)FTP server, e.g. ftp.example.com or 127.0.0.1. You MUST enter this without the ftp://, sftp:// or ssh:// prefix. If unsure about this and the other FTP settings please ask your host.
The port number your (S)FTP server listens to. Usually it's 21 for FTP and 22 for SFTP. If unsure, ask your host.
The username you use to connect to your (S)FTP server. If unsure, ask your host.
The password you use to connect to your (S)FTP server. If unsure, ask your host.
The (S)FTP directory to the Akeeba Solo installation. On FTP servers this is not the same as the filesystem path. If unsure, ask your host.
The Backup Checks tab allows you to set up the optional checking for failed scheduled backups. Please remember that these checks do not run automatically. Consult the backup scheduling page in the interface of the software for more information on doing that yourself.
A backup will be considered stuck (failed) after this many seconds of inactivity. Please do not change that unless you have a very good reason. Typically, you will only need to increase this above the default value of 180 seconds (3 minutes) if you are uploading really large files to remote storage servers.
Send email to this address (leaving it blank disables this feature).
Leave blank to use default. You can use all of the backup naming variables, e.g. [HOST] and [DATE]. You can also use [PROFILENUMBER] for the failed backup profile's number and [PROFILENAME] for the failed backup profile's name.
Leave blank to use default. You can use all of the backup naming variables, e.g. [HOST] and [DATE]. You can also use [PROFILENUMBER] for the failed backup profile's number and [PROFILENAME] for the failed backup profile's name.
The Public API tab lets you configure the settings for the front-end backup option. You only need to use this for scheduling CRON jobs with the alternative backup CRON script, a third party service using the front-end backup URL or for using the remote JSON API with Akeeba Remote Control CLI or a compatible third party service. Otherwise we recommend turning this feature off.
System Configuration – Public API
When enabled, allows launching a new backup without logging in to the back-end. Useful for scheduling backups on your server or performing remote backups.
You only need to use this for scheduling CRON jobs with the alternative backup CRON script, a third party service using the front-end backup URL or for using the remote JSON API with Akeeba Remote Control CLI or a compatible third party service. Otherwise we recommend turning this feature off.
Required to authenticate a remote backup method. Also protects the front-end backup feature from Denial of Service attacks by requiring you to pass this secret word in the front-end backup URL.
Please note that if you use any character other than a-z, A-Z and 0-9 you MUST NOT use the secret word verbatim in the front-end backup URL. Instead, you have to URL-encode it. The Schedule Automatic Backups page does that automatically for you. Just go to th Control Panel, click Schedule Automatic Backups, scroll all the way down and use one of the tabs to get the URL or command line you need to use with the secret word properly encoded in the URL.
For security reasons, you must use a complex enough secret word. Akeeba Backup / Akeeba Solo enforces that by disabling the front-end backup feature and the JSON API if you are using a Secret Word with a low complexity. We strongly recommend using a "secret word" consisting of at least 16 random, mixed case alphanumeric characters. It should not be a dictionary word or based off a dictionary word. One good resource for truly random secret words is Random.org's password generator.
Note | |
---|---|
Why is this field not a password field? The Secret word is transmitted in the clear when you load the page and is also visible when you view the source of the page or right click on the field and choose Inspect Element. In other words, as long as someone has access to the component configuration page they can trivially find out the secret word. Not to mention that the secret work is also plainly visible in the Schedule Automatic Backups page. Always use HTTPS with a commercially signed SSL certificate when configuring or backing up your site. |
Send a notification e-mail after the front-end or remote backup is completed.
When should I send the email on backup completion? Always means every time a backup completed. Upload Failed means that the email is only sent if the backup is complete but the upload to remote storage did not complete successfully. If the backup fails no email can be sent by this feature; check the Schedule Automatic Backups page for information on receiving email about failed backups.
Send email to this address (leave blank to email all Administrators).
You can enter multiple email addresses separated by
commas. For example: [email protected], [email protected],
[email protected]
Please note that the email addresses are fed directly into WordPress' email system (Akeeba Backup for WordPress) or the PHPmail library (included in Akeeba Solo). If the mail library considers your email address to not be well-formed it will not send an email to it at all. We recommend avoiding UTF-8 in email addresses for this reason. Each email message to each email address is sent separately (the are not CC'ed or BCC'ed). The more email addresses you include and the more time it takes for the remote mail server to respond the longer this feature will take to run. We recommend using less than 5 email addresses to avoid PHP timing out. If you need more than 5 email addresses you should consider creating an email forwarder on your server, i.e. an email address which will automatically forward all email messages sent to it to multiple recipients.
Leave blank to use default. You can use all of the backup naming variables, e.g. [HOST] and [DATE]
This option lets you customise the body of the email message which will be sent when a remote, CRON or front-end backup succeeds. Leave blank to use the generic default option. The email is delivered as plain text; you may not use any HTML to format it. You can use the backup naming variables, i.e. [HOST] for the domain name of your site and [DATE] for the current date and time stamp, inside the body text. Moreover, you may also use any or all of the following variables in order to enhance the clarity of your message:
The numeric ID of the current backup profile
The description of the current backup profile
The number of archive parts of the backup archive which was just generated
A list of filenames of the archive parts of the backup archive which was just generated
A list of filenames of the archive parts of the backup archive which was just generated and their approximate sizes.
Please note that Akeeba Backup does not store the exact size of each part file. It only stores the total size of all backup parts it has created. Akeeba Backup makes the following assumptions for determining the approximate size of each backup part:
The size of the only file of a single part backup is equal to the total size of the backup.
The file size of the whole parts (.j01, .j01, ... for JPA and JPS archives and .z01, .z02, ... for ZIP archives) is equal to the Part Size for Split Archives that you have defined in its configuration. This is true for almost all backup archives. In extremely rare cases parts may be up to 200 bytes short of the part size for split archive. It may also be wrong in case of a filesystem error which caused a backup archive to become truncated. That's why we're calling the size shown by this feature "approximate".
The file size of the last part (.jpa, .jps, .zip) of a multi-part archive is equal to the total backup size minus the Part Size for Split Archives that you have defined in its configuration times one less than the total number of parts.
Not recording the exact part size is deliberate. Trying to do that on backup archives with hundreds of parts would risk exhausting the PHP memory and cause the backup to fail. We consider being able to take a backup to be far more important than getting down-to-the-byte accurate file sizes reported in an email. Furthermore, byte accuracy is irrelevant since the file sizes are reported in Kb, Mb or Gb (automatically scaled).
The total size of the backup. If it's a single part backup it reports the size of the only backup archive part. If it's a mulitpart backup archive it reports the sum of the sizes of all backup archive parts. The size is printed in Kb, Mb or Gb (automatically scaled).
Shows the status of post-processing, e.g. uploading the file to remote storage like Amazon S3. If you are not using post-processing, this is always empty. If the transfer to the remote storage was successful it will output "Post-processing (upload to remote storage) was successful". If the transfer fails it will output "Post-processing (upload to remote storage) has FAILED".
The Push notifications tab lets you configure push notifications to your mobile and desktop devices.
Akeeba Solo 1.3.2 and later can notify you on backup start, finish and –sometimes– on backup failure using push notifications delivered through the third party application Pushbullet. Push messages are delivered to all your devices running the Pushbullet client software including smartphones and tablets (iOS, Android, Windows) as well as laptops and desktops (Windows, Linux, Mac OS X).
Please note that backup failure notifications are only delivered for backups started in the web interface through your browser. For technical reasons beyond our control these notifications can not be delivered for remote (JSON API) and scheduled (CRON job) backups: if the backup fails the PHP executable stops working, therefore our PHP code to send notifications can not work.
Should you be asked to allow desktop notifications to be displayed? Desktop notifications appear when the backups starts, finishes, throws a warning or halts. They are only displayed on compatible browsers (typically: Chrome, Safari, Firefox, Opera) if you give Akeeba Solo the permission to display desktop notifications when prompted in the Control Panel page. This option only controls whether this prompt should be displayed. Once you accept or decline the desktop notification messages permissions this setting has no effect. The only way to enable or disable desktop notifications will be through your browser's settings.
Check the box to enable push notifications with Pushbullet.
Enter your Pushbullet Access Token. You can find it in your Pushbullet account page. Do note that this token gives full access to your Pushbullet account and is visible by everyone who can view and edit Akeeba Solo's / Akeeba Backup's settings.
The Update tab lets you tell the application how to handle its Live Update feature.
System Configuration – Update
This is required to enable live updates of the Professional release. Please visit https://www.akeeba.com/my-subscriptions.html to get your personal Download ID.
Select the minimum release stability level for which you will be notified that a new update is available. Please use RC and Stable only on mission critical sites. Help us test new releases on live servers by installing alphas and betas.
The E-mail tab tells the application how to send out emails. Please note that the application is using the established PHPmailer software for handling email sending.
System Configuration – E-mail
Set to ON to allow the application to send out e-mails. When you set it to OFF no emails will be sent at all.
Choose the method used by the application to send emails. You can choose between:
PHP Mail. The internal PHP mail() function is used. This may not work on many servers.
SMTP server. An SMTP server is used to send out emails. It can be hosted on the same server as the application or somewhere entirely differently - e.g. GMail.
Sendmail. The system's sendmail binary is used to send emails. Please consults with your host if this is a viable option,
The email address the emails will appear to be coming
from, e.g. <[email protected]>
.
The name the emails will appear to be from, e.g.
Your Akeeba installation
.
Enable if you are using SMTP and your SMTP server
requires authentication, i.e. using your username and password
to send emails. Only used with the SMTP
server
Mailer option.
Choose the security preference of your SMTP server.
Please consult your email provider. Only used with the
SMTP server
Mailer
option.
The port of your SMTP server. Usually it's 25 for no
encryption, 465 for SSL/TLS encryption. Only used with the
SMTP server
Mailer
option.
The username used for SMTP authentication. Only used
with the SMTP server
Mailer option.
The password used for SMTP authentication. Only used
with the SMTP server
Mailer option.
The hostname or IP address of your SMTP server. Only
used with the SMTP server
Mailer option.
The Database setup tab allows you to change the way the application connects to your database
Warning | |
---|---|
Do not change the parameters on that page after you have installed Akeeba Solo unless you are perfectly sure about what you are doing. Making a mistake in these settings will make it impossible to log into Akeeba Solo! |
System Configuration – Database setup
Select the database server technology you are going to use.
Please note that for MySQL there are two options: MySQLi and MySQL (with or without the i at the end). Most servers allow you to use the newer, better, faster MySQLi (with the i at the end) option. If this doesn't work, you can also try using the one without the i at the end. This is discouraged as that option is the older, slower one which may have a performance impact on your backups.
The host name or IP address of your database server. It is usually localhost or 127.0.0.1 which are very different as far as the database connection is concerned. If localhost doesn't work, try 127.0.0.1 (note: these are dots, not commas, between the numbers). Otherwise please ask your host. Some hosts require something different in there, e.g. database123.example.com.
The user name you use to connect to your database. This is provided by your host.
The password you use to connect to your database. This is provided by your host.
The name of your database. This is provided by your host.
This is the common prefix of all database tables used by Akeeba Solo. It must be filled and has to be two to four lowercase characters a-z and numbers 0-9 followed by an underscore. If you are unsure, use the default value of solo_