I personally have a VPS with Backupsy, and use that to store all my files on there. I installed Rsnapshot on there, and configured it to connect 4 times a day for full incremental backups. I also have another script which drops a copy of the database each night and copies that onto there as well.