Как правильно настроить бэкап для вашего сайта на WordPress, и почему это важно

Как настроить бекап для вашего сайта на WordPress и почему это важно
Как настроить бекап для вашего сайта на WordPress и почему это важно
Экс­перт Теп­ли­цы соци­аль­ных тех­но­ло­гий Денис Кулан­дин рас­ска­зал поче­му так важ­но делать бэкап сво­е­го сай­та. Объ­яс­нил, как пра­виль­но запи­сать и где хра­нить бэкап. Поре­ко­мен­до­вал пла­ги­ны для бэка­па сай­тов WordPress.

Что такое бэкап?

Мно­гим при сло­ве бэкап (от англ. backup copy – резерв­ная копия) пред­став­ля­ет­ся набор архив­ных фай­лов, кото­рые хра­нят­ся где-то в вир­ту­аль­ном чулане. На самом деле, бэкап – это посто­ян­ный про­цесс сохра­не­ния инфор­ма­ции, кото­рый нуж­но пла­ни­ро­вать, про­ве­рять и настра­и­вать под изме­ня­ю­щи­е­ся зада­чи.

Безопасность

При созда­нии резерв­ной копии важ­но поза­бо­тить­ся о том, что­бы она не попа­ла в чужие руки. В про­тив­ном слу­чае зло­умыш­лен­ник может создать пол­ную копию ваше­го сай­та или полу­чить доступ к ваше­му рабо­че­му сай­ту. Дело в том, что в копии базы дан­ных содер­жат­ся дан­ные всех поль­зо­ва­те­лей ваше­го сай­та, вклю­чая их зашиф­ро­ван­ные паро­ли. Полу­чив такую копию, зло­умыш­лен­ни­ку не соста­вит тру­да рас­шиф­ро­вать паро­ли и вой­ти на ваш сайт.

Что мож­но сде­лать, что­бы избе­жать подоб­ных про­блем? Для это­го сто­ит избе­гать пере­да­чи резерв­ных копий по неза­щи­щен­ным кана­лам пере­да­чи дан­ных, таких как ftp, http, отсыл­ка на поч­то­вый ящик. Вме­сто это­го исполь­зуй­те защи­щен­ные кана­лы: sftp, ssh, https.

Если нет воз­мож­но­сти исполь­зо­вать защи­щен­ные кана­лы, сле­ду­ет при­ме­нить сред­ства шиф­ро­ва­ния (хотя шиф­ро­ва­ние сто­ит исполь­зо­вать даже с защи­щен­ны­ми кана­ла­ми). В осо­бен­но­сти сто­ит шиф­ро­вать базу дан­ных. В таком слу­чае даже если зло­умыш­лен­ник пере­хва­тит бэкап, ему потре­бу­ют­ся зна­чи­тель­ные уси­лия для рас­шиф­ров­ки полу­чен­ных копий.

Проверка бэкапов

Мно­гие руко­во­ди­те­ли оши­боч­но пола­га­ют­ся толь­ко на заве­ре­ния адми­ни­стра­то­ров о том, что бэкап настро­ен и про­ис­хо­дит авто­ма­ти­че­ски. Этот под­ход в корне непра­виль­ный! Хра­нить и про­ве­рять у себя бэка­пы дол­жен, в том чис­ле, и руко­во­ди­тель. Не сто­ит в таком важ­ном деле, как сохра­не­ние тру­да, вло­жен­но­го в созда­ние и под­дер­жа­ние сай­та, пола­гать­ся толь­ко на одно­го чело­ве­ка. Сто­ит рас­пре­де­лить ответ­ствен­ность на двух и более лиц. Дело адми­ни­стра­то­ра – настро­ить авто­ма­ти­че­скую рабо­ту бэка­пов и опи­сать, каким обра­зом мож­но про­ве­рить рабо­то­спо­соб­ность бэка­па.

Еще одно частое заблуж­де­ние – отсут­ствие прак­ти­ки пери­о­ди­че­ской про­вер­ки бэка­пов. Со вре­ме­нем авто­ма­ти­че­ский скрипт по созда­нию резерв­ных копий может дать сбой: может закон­чить­ся место, про­изой­ти ошиб­ка в самой систе­ме бэка­па, зло­умыш­лен­ник уда­лит ваши резерв­ные копии, или воз­ник­нут иные непред­ви­ден­ные про­бле­мы. Крайне важ­но делать пери­о­ди­че­ские про­вер­ки бэка­пов!

Что нужно хранить?

Если у вас боль­шое коли­че­ство сво­бод­но­го места и широ­кий канал пере­да­чи дан­ных с хостин­га сай­та до хра­ни­ли­ща резерв­ных копий, то вопрос «что нуж­но хра­нить» для вас не актуа­лен. Сохра­няй­те все!

Одна­ко если у вас нет доста­точ­ных ресур­сов, то мож­но при­ме­нить гиб­кий под­ход и хра­нить толь­ко то, что вам дей­стви­тель­но нуж­но, а не все под­ряд.

Фай­лы, кото­рые изме­ня­ют­ся при каж­дом обнов­ле­нии WordPress, не обя­за­тель­но добав­лять в бэкап, ведь их все­гда мож­но полу­чить из Интер­не­та. При стан­дарт­ной уста­нов­ке эти фай­лы зани­ма­ют в вер­сии WordPress 4.3.1 око­ло 19 Мб места и рас­по­ло­же­ны в сле­ду­ю­щих местах: в корне сай­та (фай­лы все фай­лы с пре­фик­сом wp-, фай­лы index.php, xmlrpc.php, license.txt, readme.html).

Так­же в корне сай­та могут нахо­дить­ся и поль­зо­ва­тель­ские фай­лы, напри­мер, икон­ки, файл кон­фи­гу­ра­ции wp-config.php, файл допол­ни­тель­ной кон­фи­гу­ра­ции веб-сер­ве­ра Apache .htaccess и иные. Поль­зо­ва­тель­ские фай­лы сто­ит, несо­мнен­но, добав­лять в бэкап, а так­же в дирек­то­ри­ях ./wp-admin/ и ./wp-includes/

Основные пользовательские файлы находятся в папке ./wp-content/ Это папки:

  • ./wp-content/uploads/ – в ней содер­жат­ся все загру­жа­е­мые на сайт фай­лы;
  • ./wp-content/themes/ – в ней содер­жат­ся пап­ки тем, кото­рые исполь­зу­ют­ся для отоб­ра­же­ния сай­та.

Эти пап­ки сто­ит пол­но­стью добав­лять в бэкап.

В пап­ке ./wp-content/plugins/ содер­жат­ся пла­ги­ны (англ. plug-in, от plug in «под­клю­чать») кото­рые рас­ши­ря­ют стан­дарт­ные воз­мож­но­сти WordPress и так­же необ­хо­ди­мы для пол­но­цен­ной рабо­ты ваше­го сай­та. Их так­же сто­ит добав­лять в бэкап, но мож­но делать это «хит­ро», сохра­няя толь­ко спи­сок пла­ги­нов, а не сами фай­лы. Это так­же поз­во­лит умень­шить раз­мер резерв­ной копии.

Боль­шин­ство пла­ги­нов нахо­дят­ся в репо­зи­то­рии (хра­ни­ли­ще) само­го WordPress и их лег­ко вос­ста­но­вить, набрав назва­ние пла­ги­на. Исклю­че­ние состав­ля­ют уни­каль­ные пла­ги­ны, кото­рые были напи­са­ны имен­но для ваше­го сай­та; пла­ги­ны, кото­рые недо­ступ­ны из репо­зи­то­рия WordPress (плат­ные или пла­ги­ны, кото­рые были уда­ле­ны). Такие пла­ги­ны сто­ит добав­лять пол­но­стью в резерв­ную копию.

Остав­ши­е­ся фай­лы и пап­ки index.php ./wp-content/languages/ так­же могут обнов­лять­ся самим WordPress и их не обя­за­тель­но вклю­чать в посто­ян­ные бэка­пы.

Где хранить бэкапы?

Резерв­ные копии мож­но хра­нить локаль­но на том же хостин­ге, что и сам сайт; на уда­лен­ном хра­ни­ли­ще.

Совет: чем боль­ше мест хра­не­ния вы исполь­зу­е­те, тем луч­ше.

Не сто­ит пола­гать­ся толь­ко на локаль­ное хра­ни­ли­ще, так как вы рис­ку­е­те поте­рять все сохра­нен­ные копии, в слу­чае если зло­умыш­лен­ник полу­чит доступ к ваше­му сай­ту или хостер уда­лит ваш сайт (напри­мер, в слу­чае неопла­ты или инци­ден­та, что тоже быва­ет). Так­же зача­стую на хостин­ге про­сто недо­ста­точ­но места для хра­не­ния бэка­пов.

В качестве удаленных хранилищ можно использовать:

  • уда­лен­ные сер­вер­ные хра­ни­ли­ща, доступ­ные по про­то­ко­лам ftp, sftp, scp и пр;
  • отсыл­ка по почте;
  • облач­ные хра­ни­ли­ща (Dropbox, S3 Service, Microsoft Azure, Rackspace Cloud Files, SugarSync).

Как часто нужно делать бэкапы?

Часто­та бэка­пов зави­сит от име­ю­щих­ся у вас ресур­сов, часто­ты обнов­ле­ния инфор­ма­ции на сай­те и ее важ­но­сти (сто­и­мо­сти) для вас. Если у вас сайт «визит­ка», то его мож­но обнов­лять и вруч­ную после оче­ред­но­го вне­се­ния изме­не­ний. Если у вас сайт, кото­рый обнов­ля­ет­ся раз в неде­лю, то и бэка­пы мож­но делать раз в неде­лю или даже месяц. Если у вас сайт, где каж­дый час добав­ля­ют­ся ново­сти, то реко­мен­ду­ет­ся делать еже­днев­ные или даже еже­час­ные бэка­пы.

Так­же сто­ит отме­тить, что выпол­не­ние бэка­пов может замед­лять рабо­ту само­го сай­та, и поэто­му бэка­пы сто­ит делать во вре­мя наи­мень­шей поль­зо­ва­тель­ской актив­но­сти (это мож­но выяс­нить по име­ю­щей­ся ста­ти­сти­ке ваше­го сай­та).

Основные виды бэкапов

Пол­ное резерв­ное копи­ро­ва­ние (full backup) – пол­ная копия всех фай­лов. Из копии дан­но­го вида бэка­па воз­мож­но пол­ное вос­ста­нов­ле­ние. Мину­сом дан­но­го вида бэка­па явля­ет­ся боль­шое потреб­ле­ние ресур­сов, необ­хо­ди­мых для копи­ро­ва­ния и хра­не­ния фай­лов.

Диф­фе­рен­ци­аль­ное (или раз­ност­ное) резерв­ное копи­ро­ва­ние (Differential backup) – каж­дый файл, кото­рый был изме­нен с момен­та послед­не­го пол­но­го резерв­но­го копи­ро­ва­ния, копи­ру­ет­ся каж­дый раз зано­во. Для вос­ста­нов­ле­ния инфор­ма­ции из таких бэка­пов нуж­но вос­ста­но­вить послед­нюю пол­ную вер­сию и нало­жить на нее нуж­ную вер­сию диф­фе­рен­ци­аль­но­го бэка­па.

Инкре­мент­ное резерв­ное копи­ро­ва­ние (Incremental backup) – копи­ру­ют­ся толь­ко те фай­лы, кото­рые были изме­не­ны с тех пор, как в послед­ний раз выпол­ня­лось пол­ное или преды­ду­щее инкре­мент­ное резерв­ное копи­ро­ва­ние. После­ду­ю­щее инкре­мент­ное резерв­ное копи­ро­ва­ние добав­ля­ет толь­ко фай­лы, кото­рые были изме­не­ны с момен­та преды­ду­ще­го копи­ро­ва­ния. Инкре­мент­ное резерв­ное копи­ро­ва­ние зани­ма­ет мень­ше вре­ме­ни, так как копи­ру­ет­ся мень­шее коли­че­ство фай­лов. Одна­ко про­цесс вос­ста­нов­ле­ния дан­ных зани­ма­ет боль­ше вре­ме­ни, так как долж­ны быть вос­ста­нов­ле­ны дан­ные послед­не­го пол­но­го резерв­но­го копи­ро­ва­ния, а так­же дан­ные всех после­ду­ю­щих инкре­мент­ных резерв­ных копи­ро­ва­ний. В отли­чие от диф­фе­рен­ци­аль­но­го копи­ро­ва­ния, изме­нив­ши­е­ся или новые фай­лы не заме­ща­ют ста­рые, а добав­ля­ют­ся на носи­тель неза­ви­си­мо.

Рекомендованные плагины для бэкапа сайтов WordPress

Пла­гинoв для бэка­па сай­тов WordPress доволь­но мно­го. Сто­ит попро­бо­вать несколь­ко из них, преж­де чем сде­лать окон­ча­тель­ный выбор.

BackWPup

BackWPup

Очень гиб­кий в настрой­ках пла­гин. Поз­во­ля­ет созда­вать мно­же­ство отдель­ных задач по сохра­не­нию фай­лов, кото­рые могут запус­кать­ся по соб­ствен­но­му рас­по­ряд­ку и сохра­нять­ся на раз­ные хра­ни­ли­ща.

Дан­ный пла­гин в бес­плат­ной вер­сии может сохра­нять дан­ные как в локаль­ную пап­ку на хостин­ге, так и на уда­лен­ные сер­ве­ра по про­то­ко­лу FTP, почте, а так­же облач­ные хра­ни­ли­ща (Dropbox, S3 Service, Microsoft Azure, Rackspace Cloud Files, SugarSync).

Так­же пла­гин поз­во­ля­ет сжи­мать резерв­ные копии и сни­мать спи­сок уста­нов­лен­ных пла­ги­нов в тек­сто­вый файл.

BackWPup в бес­плат­ной вер­сии не под­дер­жи­ва­ет шиф­ро­ва­ние, защи­щен­ные про­то­ко­лы SFTP, SCP. Защи­та пере­да­чи дан­ных обес­пе­чи­ва­ет­ся, если исполь­зу­ет­ся защи­щен­ный про­то­кол HTTPS.

BackWPup

UpdraftPlus

UpdraftPlus
Фраг­мент стра­ни­цы пла­ги­на UpdraftPlus.

Про­стой в настрой­ках бэкап для пол­но­го копи­ро­ва­ния. Под­дер­жи­ва­ет облач­ные хра­ни­ли­ща (Dropbox, Google Drive, S3, Rackspace). Так­же мож­но копи­ро­вать локаль­но или на уда­лен­ные сер­ве­ры по FTP или по е-mail. Шиф­ро­ва­ние и пере­да­ча по защи­щен­ным кана­лам SFTP и SCP доступ­на толь­ко за допол­ни­тель­ную пла­ту.

UpdraftPlus

Wp MyBackup

Wp MyBackup
Фраг­мент стра­ни­цы пла­ги­на Wp MyBackup.

Под­дер­жи­ва­ет облач­ные хра­ни­ли­ща (Dropbox, Google Drive, S3, Rackspace). Так­же мож­но копи­ро­вать локаль­но или на уда­лен­ные сер­ве­ры по FTP или по е-mail. Кро­ме это­го, в бес­плат­ной вер­сии есть под­держ­ка защи­щен­ных про­то­ко­лов пере­да­чи дан­ных SFTP и SCP.

Так­же сто­ит отме­тить, что пол­ная плат­ная вер­сия пла­ги­на на один сайт сей­час сто­ит суще­ствен­но дешев­ле, по срав­не­нию с упо­мя­ну­ты­ми ранее пла­ги­на­ми. В плат­ной вер­сии есть под­держ­ка диф­фе­рен­ци­аль­ных и инкре­мен­таль­ных вво­дов бэка­па, а так­же шиф­ро­ва­ние бэкап копий.

Wp MyBackup

Revisr – Git backup

Revisr - Git backup
Фраг­мент стра­ни­цы пла­ги­га Revisr – Git backup.

Моло­дой, но быст­ро раз­ви­ва­ю­щий­ся пла­гин на осно­ве систе­мы кон­тро­ля вер­сий GIT. Для рабо­ты пла­ги­на необ­хо­ди­ма под­держ­ка GIT на хостин­ге. Пла­гин обес­пе­чи­ва­ет инкре­мент­ный бэкап через меха­низ­мы само­го GIT. Этот пла­гин может быть удо­бен для раз­ра­бот­чи­ков или систем­ных адми­ни­стра­то­ров, кото­рые хотят предо­ста­вить поль­зо­ва­те­лям боль­ше само­сто­я­тель­но­сти.

Revisr – Git backup

WP Time Capsule

WP Time Capsule
Фраг­мент стра­ни­цы пла­ги­на WP Time Capsule.

Пла­гин поз­во­ля­ет делать инкре­мент­ный бэкап. Пер­вый бэкап зани­ма­ет мно­го вре­ме­ни, но после­ду­ю­щие будут намно­го быст­рее. Бэка­пы мож­но делать толь­ко на облач­ное хра­ни­ли­ще Dropbox. Инкре­мент­ность обес­пе­чи­ва­ет­ся за счет меха­низ­ма само­го Dropbox.

В бес­плат­ной вер­сии Dropbox инкре­мен­ты мож­но делать толь­ко в тече­ние 30 дней. Для уве­ли­че­ния вре­ме­ни хра­не­ния инкре­мен­тов до года нуж­но обно­вить Dropbox до плат­ной вер­сии Dropbox Pro; для неогра­ни­чен­но­го хра­не­ния нуж­но купить Dropbox for Business.

WP Time Capsule