Коротка відповідь
Вибір між двома способами зводиться до одного питання: скільки разів ви заливатимете файли.
- Разово перенести готовий сайт - файловий менеджер панелі. Заархівуйте сайт у ZIP, завантажте один файл, розпакуйте на сервері. Так швидше за FTP у рази: один потік замість тисяч дрібних передач.
- Правити верстку щодня - FTP або SFTP, бо перезаливати архів по двадцять разів на день нікому не хочеться.
- Оновити один-два файли - файловий менеджер, там є вбудований редактор: відкрили
.htaccess, виправили рядок, зберегли. - WordPress чи OpenCart - файли взагалі не чіпаються руками після встановлення, теми й плагіни ставляться з адмінки.
На серверах Hosturm перший варіант основний, і не лише з міркувань швидкості: у класичному FTP логін і пароль ідуть мережею відкритим текстом. Тому FTP-демон на порту 21 не піднятий, а розділ FTP Management у панелі не показується. Якщо ваш робочий процес зав'язаний на FTP-клієнт чи деплой із IDE - напишіть мені в підтримку, розберемо ваш випадок окремо.
Чим вони відрізняються насправді
Обидва інструменти роблять одне й те саме - кладуть файли в теку на сервері. Різниця в тому, що між вами й диском.
| Файловий менеджер | FTP | SFTP | |
|---|---|---|---|
| Що потрібно | браузер і пароль від панелі | FTP-клієнт, окремий акаунт | SSH-клієнт, доступ до shell |
| Порт | 2222 (сама панель) | 21 + пасивний діапазон | 22 |
| Пароль у мережі | усередині HTTPS | відкритим текстом | зашифрований |
| 1 архів на 300 MB | кілька хвилин | кілька хвилин | кілька хвилин |
| 20 000 дрібних файлів | заливати архівом | години, часті обриви | години |
| Розпакувати ZIP на сервері | так, кнопка Extract | ні, тільки залити | так, якщо є shell |
| Є на тарифах Hosturm | так | ні, порт закритий | ні, shell вимкнений |
Рядок про 20 000 файлів - головний практичний аргумент. FTP відкриває окреме з'єднання на кожен файл, і сайт на WordPress із темою та десятком плагінів їде по FTP півтори-дві години, регулярно обриваючись на середині. Той самий сайт архівом - 4 хвилини разом із розпакуванням. Саме тому в інструкції з перенесення WordPress я щоразу наполягаю на архіві.
Крок 1. Знайти правильну теку
Найчастіша помилка новачка - файли залиті правильно, але не туди, і браузер показує порожню сторінку або сторінку-заглушку хостера. У DirectAdmin структура завжди така:
/home/user/- корінь акаунта, сюди сайт класти не можна;/home/user/domains/example.com/- тека домену, тут лежать логи й службові папки;/home/user/domains/example.com/public_html/- корінь сайту, тільки сюди.
Файл index.php або index.html має опинитися прямо в public_html, а не в підпапці. Класична ситуація: архів розпакували, і всередині з'явилася тека site/, а вже в ній - усі файли. Тоді сайт відкривається за адресою example.com/site/, а на головній - порожньо. Лікується перенесенням вмісту на рівень вище, у файловому менеджері це виділення всіх файлів і кнопка Move.
Якщо домен ще не доданий у панель, спершу пройдіть перші кроки в DirectAdmin: без Domain Setup теки public_html просто не існує.
Крок 2. Завантаження через File Manager
Розділ System Info & Files → File Manager. Далі порядок, який я сам роблю клієнтам під час переїзду.
- На старому хостингу зайдіть у файловий менеджер, виділіть вміст public_html (не саму теку) і натисніть Compress. Формат - zip або tar.gz, різниці для DirectAdmin немає.
- Завантажте архів собі на комп'ютер, а в панелі Hosturm відкрийте
domains/example.com/public_htmlі натисніть Upload Files. - Дочекайтеся, поки смуга дійде до кінця. Не закривайте вкладку: залив через браузер живе рівно стільки, скільки відкрита сторінка.
- Виділіть архів, кнопка Extract. Файли лягають у поточну теку.
- Видаліть архів - він більше не потрібен і займає місце на тарифі.
Про місце: на тарифі Старт це 10 GB NVMe, і архів на пів гігабайта разом із розпакованою копією з'їдає гігабайт двічі. На Оптималі 20 GB, на Бізнесі 30 GB, на Pro 100 GB - актуальні обсяги завжди в блоці тарифів.
Коли архів не долітає
Залив через браузер впирається не в «ліміт хостингу», а в ваш канал і в стабільність з'єднання. На практиці спокійно проходять архіви до кількох сотень мегабайт. Гігабайтний архів через мобільний інтернет обірветься майже напевно - і тоді є два виходи: розбити сайт на два-три архіви (окремо wp-content/uploads, окремо решта) або написати мені - заллю з консолі через rsync, це швидше й без обривів.
Крок 3. FTP-акаунт у DirectAdmin: як це влаштовано
Розділ живе в Account Manager → FTP Management, кнопка Create FTP Account. Найважливіше там - не пароль, а тип акаунта: він визначає, що людина побачить, підключившись.
| Тип | Логін | Куди пускає | Кому давати |
|---|---|---|---|
| User | ім'я акаунта | увесь /home/user з усіма доменами | тільки собі |
| Domain | ім'я@example.com | тека одного домену | своєму розробнику |
| Ftp | ім'я@example.com | лише public_ftp | для обміну файлами |
| Custom | ім'я@example.com | будь-який вказаний шлях | підряднику на один розділ |
Правило просте: фрилансеру, який робить вам лендінг, ніколи не давайте акаунт типу User. Він відкриває всі домени акаунта, бекапи й поштові теки одразу. Тип Custom зі шляхом /domains/example.com/public_html дає рівно те, що потрібно для роботи, і нічого зайвого. Після закінчення робіт акаунт видаляється однією кнопкою - на відміну від пароля від панелі, який довелося б міняти.
Зверніть увагу на формат логіна: DirectAdmin підставляє домен автоматично, тож у клієнті треба писати повністю ім'я@example.com, разом із собакою. Половина звернень «не підключається FTP» - це логін, введений без доменної частини.
Крок 4. Налаштування FileZilla
Клієнт може бути будь-який - FileZilla, Cyberduck, WinSCP, Total Commander. Поля скрізь однакові:
- Хост - домен сайту або IP сервера. Домен спрацює тільки після того, як DNS уже вказують на хостинг, тому в перший день переїзду надійніше вводити IP; про терміни розходження записів я писав у статті про спрямування домену на хостинг.
- Порт - 21 для FTP і FTPS, 22 для SFTP. Пусте поле означає 21.
- Протокол - «FTP - File Transfer Protocol», шифрування «Використовувати явний FTP через TLS, якщо доступно».
- Режим передачі - пасивний. Активний режим вимагає, щоб сервер сам стукав до вас у порт, і його ріже будь-який домашній роутер.
Пасивний режим - причина класичного симптому: каталог начебто підключився, а список файлів не вантажиться і клієнт пише про тайм-аут. Це не пароль, це режим. Перемикається у FileZilla в «Налаштування → З'єднання → FTP».
І окремо про TLS. Якщо клієнт питає «сервер не підтримує шифрування, продовжити небезпечно?» - краще не продовжувати з публічного Wi-Fi: пароль піде в ефір як є. Це та сама логіка, що й із сайтом без сертифіката, про яку я писав у статті навіщо сайту SSL, тільки тут у відкритому вигляді летить не форма зворотного зв'язку, а доступ до всіх ваших файлів.
Чому на моїх серверах FTP вимкнений
Чесно, як є: демон на порту 21 не встановлений, розділ FTP Management у панелі не відображається, підключитися FTP-клієнтом до hosturm-акаунта зараз не вийде. Причина не в економії - FTP тягне за собою два ризики, які я не хочу мати на спільному сервері: паролі відкритим текстом і брутфорс по 21 порту, який на будь-якому публічному IP починається в першу ж добу.
Що замість нього:
- File Manager у панелі - усе, що потрібно для заливки, редагування та розпакування, усередині HTTPS-сесії;
- перенесення сайту силами підтримки - копіюю файли й базу сам, безкоштовно, звичайний сайт займає від 30 хвилин до 2 годин;
- індивідуальне рішення - якщо у вас деплой із GitHub чи PhpStorm і без окремого доступу ніяк, напишіть, подивимося, що можна зробити саме на вашому акаунті.
SSH і SFTP на шаред-тарифах теж вимкнені: shell у користувачів стоїть /bin/false. Потрібен постійний консольний доступ - це вже рівень окремого VPS, там ви самі собі root; різницю між форматами розбирав у статті шаред, VPS чи виділений сервер.
Що зробити одразу після заливки
Файли на місці - це ще не працюючий сайт. Чотири речі, які перевіряю щоразу:
- Приховані файли. Увімкніть їх показ у файловому менеджері. Якщо
.htaccessне потрапив в архів, головна відкриється, а внутрішні сторінки віддадуть 404 - правила ЧПУ лежать саме там. - Права. Файли 644, теки 755. Після розпакування архіву з Windows вони іноді з'їжджають на 777 - це не «щоб точно працювало», а відкриті двері: на такі теки першими лізуть при зламі.
- База даних. Файли переїжджають окремо від бази. Створіть її в Account Manager → MySQL Management, імпортуйте дамп через phpMyAdmin і впишіть доступи в конфіг CMS. Пам'ятайте про префікс акаунта: ввели
shop, реальне ім'я бази будеuser_shop. - Версія PHP. На серверах стоїть PHP 8.3, другим доступний 7.4. Старий сайт, який роками жив на 7.4, після переїзду на 8.3 може віддати білий екран - версія перемикається в панелі за домен, помилки шукайте в
error.logу теці домену.
Найчастіші помилки і що вони означають
| Що бачите | Що насправді | Що робити |
|---|---|---|
| Connection refused на порт 21 | FTP-сервер не слухає порт | вантажити через File Manager панелі |
| 530 Login authentication failed | логін без доменної частини | писати повністю ім'я@example.com |
| Підключився, але список порожній | активний режим замість пасивного | увімкнути passive у клієнті |
| Порожня сторінка на домені | файли в підпапці, не в public_html | перенести вміст на рівень вище |
| Сторінка-заглушка хостера | index.html хостера поверх вашого сайту | видалити чужий index.html |
| Головна є, внутрішні 404 | немає .htaccess | увімкнути показ прихованих файлів, залити його |
| Error establishing a database connection | файли залиті, база - ні | створити базу, імпортувати дамп, правити конфіг |
| Залив обривається на 60% | розрив каналу, не ліміт сервера | розбити на кілька архівів |
Окремий випадок - сайт залився й відкривається, але повільно. Це вже не про спосіб заливки: причини й порядок перевірки розібрані в статті чому сайт повільний.
Коротко
- Разова заливка - завжди архівом через File Manager, це швидше за FTP у рази.
- Корінь сайту -
domains/example.com/public_html, index має лежати прямо в ньому. - Архів після розпакування видаляйте: на Старті всього 10 GB.
- У FTP-акаунтах DirectAdmin тип Custom для підрядника, User - тільки собі.
- Логін FTP пишеться повністю з доменом, режим - пасивний, шифрування - явний TLS.
- На тарифах Hosturm FTP і SSH зараз вимкнені: порт 21 закритий, shell
/bin/false. - Після заливки: приховані файли, права 644 і 755, база, версія PHP.
- Не хочеться робити руками - пишіть у підтримку, перенесу сам, це безкоштовно.
Тарифи, обсяг диска й повний список того, що входить у кожен план - на сторінці хостингу. Заявлена доступність 99.9%, бекапи щоденні й зберігаються поза сервером, панель - DirectAdmin 1.710 на Apache 2.4.
Потрібен хостинг, який просто працює?
DirectAdmin, безкоштовний SSL, щоденні бекапи поза сервером і підтримка, де відповідає адміністратор. Від 142 грн/міс.
Обрати тариф