=== BackWPup ===
Contributors: inpsyde, danielhuesken, Bueltge, nullbyte
Tags: backup, dump, database, file, ftp, xml, time, upload, multisite, cloud, dropbox, storage, S3
Requires at least: 3.2
Tested up to: 3.5.1
Stable tag: 3.0.6
License: GPLv3
License URI: http://www.gnu.org/licenses/gpl-3.0.html

Flexible, scheduled WordPress backups to any location

== Description ==

The backup files can be used to save your whole installation including `/wp-content/`
and push them to an external Backup Service, if you don’t want to save the backups on
the same server. With the single backup .zip file you are able to restore an installation.

* Database Backup  *(needs mysqli)*
* WordPress XML Export
* Generate a file with installed plugins
* Optimize Database
* Check and repair Database
* File backup
* Backups in zip, tar, tar.gz, tar.bz2 format *(needs gz, bz2, ZipArchive)*
* Store backup to directory
* Store backup to FTP server *(needs ftp)*
* Store backup to S3 services *(needs curl)*
* Store backup to Microsoft Azure (Blob) *(needs PHP 5.3.2, curl)*
* Store backup to RackSpaceCloud *(needs PHP 5.3.2, curl)*
* Store backup to Dropbox *(needs curl)*
* Store backup to SugarSync *(needs curl)*
* Send logs and backups by email
* Multi-site support only as network admin

Get the Pro Version: http://marketpress.com/product/backwpup-pro/

**WordPress 3.2 and PHP 5.2.6 required!**

**To use the Plugin with full functionality PHP 5.3.3 with mysqli, FTP,gz, bz2,  ZipArchive and curl is needed.**

**Plugin functions that don't work will be not displayed.**

**Test your Backups!**

**Made by [Inpsyde](http://inpsyde.com) &middot; We love WordPress**

Have a look at the premium plugins in our [market](http://marketpress.com).

== Frequently Asked Questions ==

= My backup jobs don’t seem to run as scheduled. =
  
BackWPup uses WordPress’ own cron job system (**WP Cron**) to execute scheduled backup jobs. In order for WordPress to “know” when to execute a job, its “inner clock” needs to be set regularly. That happens whenever someone (including yourself) visits your site. 
If your site happens to not being visited for a period of time, WordPress’ inner clock gets sort of slow. In that case it takes an extra server-side cron job to regularly call http://your-site.tld/wp-cron.php and tell WordPress what time it is.
  
A simple way to find out whether WP Cron works as it should on your site is to create a new post and set its publishing date to some point in the future, i.e. 10 minutes from now. Then leave your site (that’s important), come back after 11 minutes and check whether your scheduled post has been published. If not, you’re very likely to have an issue with WP Cron.

= Yuk! It says: “ERROR: No destination correctly defined for backup!” =

That means a backup job has started, but BackWPup doens’t know where to store the backup files. Please cancel the running job and re-edit its configuration. There should be a Tab “To: …” in your backup job’s configuration. Have you set a backup target correctly? 

= A backup job has started, but nothing seems to be happening—not even when I re-start it manually. =

**Solution #1**

* Open BackWPup->Settings
* Go to the Informations tab.
* Find *Server self connect:* in the left column.
* If it says something like *(401) Authorisation required* in the right column, go to the Network tab and set the username and password for server-side authentication.
* Try again starting the backup job.

**Solution #2**

* Open wp-config.php and find the line where it says `if ( !defined('ABSPATH') )`.
* Somewhere before that line add this: `define( 'ALTERNATE_WP_CRON', true );`

**Solution #3**

Not really a solution, but a way to identify the real problem: see remarks on WP Cron at the top.

= I get this error message: `The HTTP response test get a error "Connection time-out"` =

BackWPup performs a simple HTTP request to the server itself every time you click `run now` or whenever a backup job starts automatically. The HTTP response test message could mean:

* Your host does not allow *loop back connections*. (If you know what `WP_ALTERNATE_CRON` is, try it.)
* Your WordPress root directory or backup directory requires authetification. Set username and password in Settings->Network.
* The Server can’t resolve its own hostname.
* A plugin or theme is blocking the request. 
* Other issues related to your individual server and/or WordPress configuration.


= I get a fatal error: `Can not create folder: […]/wp-content/backwpup-[…]-logs in […]/wp-content/plugins/backwpup/inc/class-job.php …` =
Please set CHMOD 775 on the /wp-content/ directory and refresh the BackWPup dashboard. If that doesn’t help, try CHMOD 777. You can revert it to 755 once BackWPup has created its folder.


= I don’t see an option to configure Dropbox, S3 or other destinations. =
If you don’t see those options in the Add new job->General tab, it is most likely your server running a PHP version below 5.3.


= Backup jobs are running forever! =
Almost all web hosts have limited allowed script execution time on their servers. As a consequence, BackWPup might be “interrupted” in its job execution when executing the job takes longer than script execution is allowed for by the server (i.e. when the job requires to add a lot of files to a ZIP archive). Whenever BackWPup’s execution is stopped by the server, it waits 5 minutes before it tries to restart the job. If it is stopped again, it waits another five minutes. Those interruptions can then add up to what looks like 20-40 minutes of execution while really most of it is waiting time for a job to be restarted.

A remedy in this case can be splitting a large file backup into smaller chunks. For example, create one backup job for your WordPress installation, but exclude /wp-content/. Create another job for /wp-content/. If your site has a lot of uploaded photos, maybe even go further, exclude /uploads/ from your /wp-content/ backup and create a third job for /uploads/.


= How do I restore a backup? =
Up to now, there is no feature in BackWPup to restore a backup. You can follow [these instructions from the WordPress Codex](http://codex.wordpress.org/Restoring_Your_Database_From_Backup) or [this tutorial (also Codex)](http://codex.wordpress.org/WordPress_Backups) for more detailed information on cPanel, Plesk, vDeck and others.


= When I edit a job the Files tab loads forever. =
Go to Settings->General and disable “Display folder sizes on files tab if job edited”. Calculating folder sizes can take a while on sites with many folders.

= I generated a list of my installed plugins, but it’s hard to read. =
Try opening the text file in an editor software like Notepad++ (Windows) or TextMate (Mac) to preserve line-breaks.

= My web host notified me BackWPup was causing an inacceptable server load! =
Go to Settings->Jobs and try a different option for “Reduce server load”.


= Can I cancel a running backup job via FTP? =

Yes. Go to your BackWPup temp directory and find a file named `backwpup-xyz-working.php` where “xyz” is a random string of numbers and characters. Delete that file to cancel the currently running backup job.


= Can I move the temp directory to a different location? =

Yes. You need to have writing access to the wp-config.php file (usually residing in the root directory of your WordPress installation). 

* Open wp-config.php and find the line where it says `if ( !defined('ABSPATH') )`. 
* Somewhere *before* that line add this: `define( 'WP_TEMP_DIR', '/absolute/path/to/wp/your/temp-dir' );`
* Replace `/absolute/path/to/wp/` with the absolute path of your WordPress installation and `your/temp-dir` with the path to your new temp directory.
* Save the file.


= What do those placeholders in file names stand for? =

* %d = Two digit day of the month, with leading zeros
* %j = Day of the month, without leading zeros
* %m = Day of the month, with leading zeros
* %n = Representation of the month (without leading zeros)
* %Y = Four digit representation for the year
* %y = Two digit representation of the year
* %a = Lowercase ante meridiem (am) and post meridiem (pm)
* %A = Uppercase ante meridiem (AM) and post meridiem (PM)
* %B = [Swatch Internet Time](http://en.wikipedia.org/wiki/Swatch_Internet_Time)
* %g = Hour in 12-hour format, without leading zeros
* %G = Hour in 24-hour format, without leading zeros
* %h = Hour in 12-hour format, with leading zeros
* %H = Hour in 24-hour format, with leading zeros
* %i = Two digit representation of the minute
* %s = Two digit representation of the second
* %u = Two digit representation of the microsecond
* %U = [UNIX timestamp](http://www.php.net/manual/en/function.time.php) (seconds since January 1 1970 00:00:00 GMT)

== Screenshots ==

1. Working job and jobs overview
2. Job creation/edit
3. Displaying logs
4. Manage backup archives
5. Dashboard

== Upgrade Notice ==
= After an upgrade from version 2 =

Please check all settings after the update:

* Dropbox authentication must be done again
* SugarSync authentication must be done again
* S3 Settings
* Google Storage is now in S3
* Check all your passwords

== Installation ==

1. Download the BackWPup plugin.
2. Decompress the ZIP file and upload the contents of the archive into `/wp-content/plugins/`.
3. Activate the plugin through the 'Plugins' menu in WordPress


== Changelog ==
= Version 3.0.6 =
* Fixed: Massages on empty DB prefix
* Fixed: Bug in cron calculation
* Improved: Dropbox upload so that it can continuing on next try

= Version 3.0.5 =
* Changed: Display only normal messages on progress bars
* Changed: Detection of multisite blog upload folder
* Changed: Backups list for destination file will not cached.
* Changed: Reduced files of AWS SDK to the only needed.
* Fixed: Side load braking if no folder permissions
* Fixed: Multiple backups deletion on backups page not working
* Fixed: DB optimize and check not only use WP tables if selected
* Fixed: File deletion on Dropbox if folder name has a space
* Fixed: False scheduling time in some timezones
* Removed: Option for excluding file, cache, temp folders. Can done with file/folder exclusion too.
* Added: Option to restart the job on archive creation if a size of files reached
* Added: Option to set Zip method (PclZip or ZipArchive)
* Improved: Performance if PclZip used.
* Updated: AWS SDK to Version 1.6.1
* Updated: AWS SDK to Version 2.2.0 (PHP 5.3.3+)

= Version 3.0.4 =
* Changed: default settings for 'Restart on every main step' and 'Reduce server load' to disabled
* Fixed: Settings not correctly set to default
* Fixed: mysqli::get_charset() undefined method
* Fixed: Settings not saved correctly
* Fixed: Abort on MySQL Functions Backup
* Improved: MySQLi connection
* Added: Server connection test on run now.
* Added: S3 AWS SDK 1.6.0 for PHP lower than 5.3.3

= Version 3.0.3 =
* Improved: Archive creation performance
* Fixed: Problem with S3 Prefix
* Fixed: warnings on excluded folders
* Fixed: message from putenv
* Fixed: not working downloads
* Changed: removed fancybox and uses thickbox because plugin compatibility
* Added: folder checking on run now

= Version 3.0.2 =
* Fixed: Warnings on job edit tab files
* Fixed: folder name on temp cleanup in cron
* Fixed: Setting charset on sql backup
* Fixed: DB Connection on database backup if hostname has a port
* Fixed: Call undefined function apc_clear_cache()
* Fixed: wp-content selected folders not excluded
* Added: Deactivation off multi part upload for S3 Services
* Added: fallback for mysql_ping()
* Added: Options for email senders name
* Changed: 5 minutes cron steps back
* Removed: Flashing admin bar icon
* Updated: OpenCloud API to Version 1.4.1

= Version 3.0 =
* Added: Jobs can now be started with an external link or per command line
* Added: Backups can now be compressed with gz or bzip2
* Added: All file names can now be adjusted
* Added: MySQL dump supports now views
* Added: Settings for access control per capability and role
* Added: Save a list of installed Plugins
* Added: Support for WP-CLI
* Improved: Job edit page with tabs
* Improved: Settings page with tabs
* Improved: Database dump now uses mysqli PHP extension for better performance
* Improved: ZIP archives are now created with PHP Zip if available
* Improved: All passwords are now stored encrypted in database
* Improved: wp-cron job start mechanism
* Improved: Job start mechanism not longer uses URL in plugin directory
* Improved: Use `temp` directory in uploads or set it with `WP_TEMP_DIR`
* Changed: Mailing backup archives now with SwiftMailer
* Changed: Job process now back in the WordPress environment
* Changed: License changed to GPLv3
* Changed: Rewrote almost the complete code base to use classes with auto-loading
* Changed: Logs are now displayed with fancybox
* Updated: AWS SDK v2.1.2 (PHP 5.3.3)
* Updated: OpenCloud SDK to v1.3 (PHP 5.3)
* Updated: Windows Azure SDK v0.3.1_2011-08 (PHP 5.3.2)
* Removed: serialized job export
* Removed: tools section - not needed anymore
* Removed: Dashboard widgets are now on the BackWPup plugin dashboard
* Fixed: many, many minor bugs

= Version 3.0 Pro =

* Wizards
* Export jobs and settings as XML
* Synchronization of files to backup with destination (filename and size checked)
* Wizard to import jobs and settings from XML
* Database dump can backup other MySQL databases
* Database dump can use `mysqldump` command on commend line
* Database dump can create XML files (phpMyAdmin schema)
* Use your own API keys for Dropbox and SugarSync
* Premium Support
* Automatic updates
