Перейти к содержимому
К
Хостинг

Как загрузить сайт на хостинг: FTP, SFTP и панель управления

Чтобы загрузить сайт на хостинг, нужно скопировать его файлы в папку домена на сервере, а если сайт работает с базой данных — создать базу на хостинге, импортировать в неё дамп и указать новые реквизиты подключения в конфиге. Файлы переносят одним из трёх способов: через файловый менеджер в панели хостинга, через FTP/SFTP-клиент вроде FileZilla или архивом с распаковкой на сервере. Ниже разбираем, что подготовить до загрузки, каждый способ по шагам, перенос базы, права на файлы, проверку через hosts-файл и ошибки, из-за которых после загрузки открывается пустая страница.

Что нужно подготовить до загрузки

Загрузка файлов — не первый шаг, а третий. Если пропустить подготовку, файлы окажутся на сервере, а сайт всё равно не откроется, и будет непонятно, где искать причину.

  • Оплаченный тариф и письмо с доступами. После оплаты хостинг присылает адрес панели управления, логин и пароль, а также данные для FTP: адрес сервера, порт, имя пользователя. Если письма нет — оно в разделе с доступами в панели.
  • Домен добавлен в панель. В панели хостинга домен нужно «привязать»: создать для него сайт, чтобы сервер знал, какую папку показывать при обращении к этому имени. Обычно это делается в разделе «Сайты» или «Домены» одной кнопкой.
  • Известна папка сайта. При добавлении домена панель создаёт каталог, из которого будут отдаваться страницы. Чаще всего он называется public_html, www, htdocs или совпадает с именем домена. Запомните путь: загружать надо именно туда, а не в корень аккаунта.
  • Сайт собран для продакшена. Если сайт на CMS, выгрузите его целиком вместе с папкой загрузок и файлом конфигурации. Если это статика или собранный фронтенд — папка с результатом сборки, а не исходники.
  • Дамп базы данных. Для сайтов на WordPress, Joomla, OpenCart, Битрикс и любой другой CMS файлов недостаточно: содержимое живёт в базе. Её экспортируют отдельно (об этом ниже).

Если домен только что куплен, его DNS-записи нужно направить на хостинг — как это сделать, мы разбирали в статье про DNS-записи простыми словами. Но менять DNS лучше после того, как сайт проверен на новом сервере, — способ проверки описан ниже.

Три способа загрузить файлы: сравнение

СпособЧто нужноПлюсыМинусыКому подходит
Файловый менеджер панелиТолько браузер и доступ в панельНичего не устанавливать, видно структуру папокНеудобно грузить сотни файлов по одному, браузер может оборвать большую загрузкуНебольшие сайты, разовые правки
FTP/SFTP-клиентПрограмма (FileZilla, WinSCP), данные FTPУдобно переносить много файлов, докачка при обрыве, синхронизацияНужно установить программу и разобраться с подключениемСайты на CMS с тысячами файлов
Архив с распаковкой на сервереАрхив ZIP и файловый менеджер панелиСамый быстрый: один файл вместо тысяч, ниже риск потерять что-то по дорогеНужна функция распаковки в панели; за лишней папкой внутри архива легко не уследитьПервая загрузка любого сайта

На практике удобнее всего комбинировать: первый раз залить сайт архивом, а потом править отдельные файлы через FTP или менеджер панели.

Способ 1. Файловый менеджер в панели хостинга

Во всех популярных панелях — ISPmanager, cPanel, FastPanel, Plesk и собственных панелях хостингов — есть встроенный файловый менеджер. Он выглядит как проводник в браузере: слева дерево папок, сверху кнопки «Загрузить», «Создать», «Распаковать».

  1. Войдите в панель хостинга по адресу из письма.
  2. Откройте файловый менеджер и перейдите в папку сайта — например, /www/site.ru/ или /public_html/.
  3. Если в папке лежит заглушка хостинга вроде index.html с текстом «Сайт создан», удалите её, иначе она перекроет ваш сайт.
  4. Нажмите «Загрузить» и выберите файлы. Папки браузер обычно загружать не умеет — их придётся создавать вручную или использовать архив.
  5. После загрузки проверьте, что структура совпадает с той, что была на компьютере: файл index.php лежит прямо в папке сайта, а не во вложенной.

Способ хорош для правки одного-двух файлов. Для полного сайта на CMS с десятками тысяч файлов он превращается в мучение — берите архив или FTP.

Способ 2. FTP или SFTP через FileZilla

FTP — протокол передачи файлов между компьютером и сервером. SFTP — его защищённый вариант поверх SSH: данные и пароль идут в зашифрованном виде. Если хостинг поддерживает SFTP, выбирайте его; обычный FTP передаёт пароль открытым текстом, и в публичном Wi-Fi это опасно. FileZilla — бесплатная программа для обоих протоколов, есть для Windows, macOS и Linux.

  1. Установите FileZilla с официального сайта и запустите.
  2. Откройте «Менеджер сайтов» и создайте новое подключение.
  3. Укажите хост (адрес сервера из письма хостинга или IP), протокол — SFTP, если он доступен, иначе FTP с шифрованием TLS, если хостинг его поддерживает. Порт для SFTP обычно 22, для FTP — 21.
  4. Введите логин и пароль FTP-пользователя. Это отдельные данные, не те, что от панели, — их создают или смотрят в разделе «FTP-пользователи».
  5. Нажмите «Соединиться». Слева откроются файлы вашего компьютера, справа — сервера.
  6. Справа перейдите в папку сайта, слева — в папку с сайтом на компьютере. Выделите всё содержимое слева и перетащите вправо.
  7. Дождитесь конца передачи и посмотрите вкладку «Неудачные передачи» внизу: если там что-то есть, повторите загрузку этих файлов.

Полезная настройка для сайта на CMS: в параметрах передачи увеличьте число одновременных соединений до 4–6, иначе тысячи мелких файлов будут грузиться очень долго. Ещё лучше — сначала загрузить архив и распаковать его на сервере, а FTP оставить для правок.

Способ 3. Архив и распаковка на сервере

Самый быстрый и надёжный способ первой загрузки. Один файл в 200 мегабайт передаётся быстрее, чем двадцать тысяч файлов общим весом в те же 200 мегабайт, и его сложнее «недокачать».

  1. На компьютере зайдите внутрь папки сайта, выделите всё содержимое и упакуйте его в ZIP. Именно содержимое, а не саму папку — иначе на сервере появится лишний уровень вложенности.
  2. Загрузите архив через файловый менеджер панели в папку сайта.
  3. Нажмите «Распаковать» (в разных панелях кнопка называется «Извлечь» или «Разархивировать»).
  4. Убедитесь, что index.php оказался прямо в папке сайта, и удалите архив, чтобы он не лежал в открытом доступе — по прямому адресу его сможет скачать кто угодно.

Если в панели нет распаковки, но есть SSH-доступ, архив разворачивают командой unzip в терминале. На дешёвых тарифах SSH бывает отключён — тогда остаётся FTP.

Как перенести базу данных

Сайт на CMS без базы покажет ошибку подключения или белый экран: тексты, товары, настройки и пользователи хранятся именно в базе. Переносят её в три приёма — экспорт, импорт, правка конфига.

Экспорт со старого места

Если сайт работал на локальном сервере (OpenServer, XAMPP, Laragon) или на другом хостинге, откройте там phpMyAdmin — веб-интерфейс для работы с базами MySQL и MariaDB, — выберите базу сайта, перейдите на вкладку «Экспорт» и сохраните файл .sql. Для базы в сотни мегабайт лучше включить сжатие в gzip или выгрузить через терминал командой mysqldump.

Импорт на хостинге

  1. В панели хостинга откройте раздел «Базы данных» и создайте новую базу. Запишите её имя, имя пользователя, пароль и адрес сервера базы — обычно localhost, но у части хостингов это отдельный хост.
  2. Откройте phpMyAdmin из панели, выберите созданную базу и на вкладке «Импорт» загрузите файл .sql.
  3. Если файл больше лимита загрузки (часто это несколько десятков мегабайт), сожмите его в gzip, разбейте на части или попросите поддержку хостинга импортировать дамп.
  4. Дождитесь сообщения об успешном импорте и проверьте, что таблицы появились.

Правка конфигурации подключения

Сайт всё ещё пытается подключиться к старой базе. Откройте файл конфигурации и впишите новые имя базы, пользователя, пароль и хост. Где этот файл, зависит от CMS: у WordPress — wp-config.php, у Joomla — configuration.php, у OpenCart — config.php в корне и в папке admin, у Laravel — файл .env, у 1С-Битрикс — bitrix/.settings.php.

Если сайт переезжает с одного домена на другой (например, с локального site.local на site.ru), в базе может остаться старый адрес — WordPress хранит его в настройках и в содержимом записей. Адрес меняют в настройках CMS или поиском с заменой по дампу перед импортом.

Права на файлы и папки

На сервере у каждого файла есть права — набор разрешений, кто может его читать, менять и запускать. После загрузки они обычно выставляются правильно сами, но если сайт отдаёт ошибку 403 или CMS не может сохранить картинку, проверьте их в файловом менеджере или FTP-клиенте.

  • Папки — 755: владелец может всё, остальные — читать и заходить.
  • Файлы — 644: владелец может читать и писать, остальные — только читать.
  • Папка загрузок CMS (например, wp-content/uploads) должна быть доступна для записи веб-серверу — на виртуальном хостинге для этого хватает 755, если сайт работает от вашего пользователя.
  • Права 777 — «можно всё всем» — не ставьте никогда, даже если так советует форум. Это открытая дверь для взлома, о чём мы писали в материале про защиту сайта от взлома.

Как проверить сайт до смены DNS

Пока домен указывает на старый сервер или ещё не настроен, новый сайт можно посмотреть только хитростью. Самый простой способ — файл hosts на своём компьютере: в нём можно вручную сказать системе, что домен site.ru живёт на IP нового хостинга. Только ваш компьютер будет открывать новый сервер, остальной интернет ничего не заметит.

  1. Узнайте IP-адрес хостинга — он есть в письме с доступами или в панели.
  2. На Windows откройте блокнот от имени администратора и в нём файл C:\Windows\System32\drivers\etc\hosts. На macOS и Linux — файл /etc/hosts с правами администратора.
  3. Добавьте строку: IP-адрес, пробел, имя домена. Ещё одну — для варианта с www.
  4. Сохраните файл, очистите кэш браузера или откройте сайт в режиме инкогнито.
  5. Проверьте главную, внутренние страницы, формы, картинки, вход в админку.
  6. После проверки удалите добавленные строки, иначе через месяц будете недоумевать, почему сайт у вас открывается не так, как у всех.

Многие хостинги дают ещё технический адрес вида login.hosting.ru или временный поддомен, по которому сайт виден без правки hosts. Для сайтов на CMS он менее удобен: часть ссылок будет вести на основной домен. Когда всё проверено, меняйте A-запись домена на IP нового хостинга и ждите обновления DNS — обычно от нескольких минут до суток.

Типичные ошибки при загрузке сайта

  • Загрузили не в ту папку. Файлы лежат в корне аккаунта или во вложенной папке site/, а сервер смотрит в public_html. Симптом — заглушка хостинга или ошибка 403 вместо сайта. Лечится переносом файлов на уровень выше.
  • Внутри архива — папка в папке. Заархивировали папку целиком, и после распаковки получилось public_html/site/index.php. Переместите содержимое на уровень выше.
  • Осталась заглушка index.html. Сервер при обращении к папке ищет индексный файл, и у многих хостингов index.html в приоритете перед index.php. Ваш сайт загружен, но показывается страница «Сайт создан». Удалите лишний файл.
  • Забыли базу или конфиг. Файлы на месте, а сайт пишет «Ошибка установки соединения с базой данных». Проверьте, что база импортирована и в конфиге верные реквизиты — вплоть до хоста, который не всегда localhost.
  • Не перенесли скрытые файлы. Файлы, начинающиеся с точки, — .htaccess, .env — проводник и некоторые FTP-клиенты по умолчанию не показывают. Без .htaccess ломаются красивые адреса, без .env не запустится Laravel. Включите показ скрытых файлов в настройках клиента.
  • Другая версия PHP. Локально сайт работал на PHP 8.3, а на хостинге стоит 7.4, и он падает с ошибкой 500. Версию переключают в панели; подробнее — в статье про версию PHP на хостинге.
  • Оборвалась загрузка. FTP перенёс половину файлов, а вы не посмотрели журнал. Сайт открывается, но без стилей или с битыми картинками. Проверьте вкладку неудачных передач или заливайте архивом.
  • Не проверили до смены DNS. Переключили домен на новый сервер, а там сайт не работает, — простой для всех посетителей. Сначала проверка через hosts, потом DNS.

Чек-лист: сайт загружен правильно

  • Домен добавлен в панель хостинга, папка сайта известна.
  • Файлы лежат прямо в папке сайта, index.php в корне, без вложенной папки.
  • Заглушка хостинга index.html удалена.
  • Скрытые файлы (.htaccess, .env) перенесены.
  • База создана на хостинге, дамп импортирован без ошибок.
  • В конфигурации сайта указаны новые реквизиты базы.
  • Версия PHP на хостинге совпадает с той, на которой сайт разрабатывался.
  • Права на папки 755, на файлы 644, папка загрузок доступна для записи.
  • Сайт проверен через hosts-файл: главная, внутренние страницы, формы, админка.
  • Архив с сайтом удалён с сервера, строки из hosts убраны после проверки.
  • DNS-записи домена переведены на новый хостинг.

Если сайт переезжает не с компьютера, а с другого хостинга, к этому списку добавляются переключение без простоя и сохранение позиций — это отдельная тема, разобранная в статье про перенос сайта на другой хостинг. А если нужна отдельная копия для экспериментов, посмотрите, как устроена тестовая копия сайта.

Коротко

Загрузка сайта — это файлы в папку домена плюс база с правильным конфигом. Первый раз удобнее всего залить архив и распаковать его в панели, для правок держать под рукой FileZilla по SFTP. Перед сменой DNS проверьте сайт через hosts-файл, а после загрузки удалите заглушку и архив. Большинство проблем «загрузил, а не работает» — это не та папка, забытая база или лишний index.html.

Если сайт ещё не размещён и вы выбираете, куда его загружать, посмотрите тарифы хостинга CasperLab: поддержка поможет с первой загрузкой и переносом базы.

Подобрать хостинг в CasperLab

Поможем подобрать решение под вашу задачу и рассчитаем стоимость без обязательств.

Подобрать хостинг
Поделиться:
В какую папку загружать сайт на хостинге?
В корневую папку домена, которую панель создала при его добавлении. Чаще всего она называется public_html, www, htdocs или совпадает с именем домена. Точный путь виден в настройках сайта в панели хостинга. Файл index.php должен лежать прямо в этой папке, а не во вложенной.
Чем FTP отличается от SFTP и что выбрать?
FTP передаёт файлы и пароль в открытом виде, SFTP шифрует всё поверх SSH. Если хостинг поддерживает SFTP, выбирайте его, особенно при работе из кафе или через публичный Wi-Fi. Если доступен только FTP, включите в клиенте шифрование TLS, когда хостинг это позволяет.
Как загрузить сайт на хостинг без FTP?
Через файловый менеджер в панели хостинга: упакуйте содержимое папки сайта в ZIP, загрузите архив через браузер и распакуйте кнопкой в панели. Это даже быстрее FTP для первой загрузки. Базу данных импортируют через phpMyAdmin, тоже из панели.
Загрузил сайт, а открывается страница хостинга. Почему?
Обычно в папке сайта осталась заглушка index.html, которую сервер показывает раньше вашего index.php, либо файлы загружены во вложенную папку или не в ту директорию. Удалите заглушку и убедитесь, что index.php лежит в корне папки домена. Если менялись DNS-записи, подождите их обновления.
Как перенести базу данных сайта на хостинг?
Экспортируйте базу в файл .sql через phpMyAdmin на старом месте, создайте новую базу в панели хостинга, импортируйте файл через phpMyAdmin и впишите новые имя базы, пользователя, пароль и хост в файл конфигурации CMS. Для WordPress это wp-config.php.
Можно ли проверить сайт на хостинге до переноса домена?
Да. Добавьте в файл hosts на своём компьютере строку с IP хостинга и именем домена — тогда только у вас домен будет открываться с нового сервера. Проверьте страницы, формы и админку, затем удалите строку и переключайте DNS. У многих хостингов есть и технический адрес для предпросмотра.