Как выложить сайт в интернет
Сайт из HTML, CSS и картинок — это просто папка с файлами. Чтобы его видели другие, папку кладут на сервер — компьютер, который всегда включён и подключён к интернету. Место на таком сервере называют хостингом, а адрес сайта вроде example.by — доменом.
Как выложить
Есть два пути. Для сайта со своим адресом нужны хостинг и домен, а учебный сайт или портфолио можно бесплатно выложить на GitHub Pages.
Хостинг и свой домендля сайта со своим адресом
- Хостинг. Для сайта из HTML и CSS хватает самого простого тарифа виртуального хостинга. Сравнивайте объём места, наличие бесплатного сертификата https и поддержку SFTP.
- Домен. Его регистрируют у регистратора доменов (часто — у того же хостинга) на год или дольше и потом продлевают. В настройках домена указывают серверы имён (DNS) хостинга — их даёт хостинг. Изменения DNS расходятся по интернету обычно от нескольких минут до суток, изредка дольше.
- Загрузка файлов. В панели хостинга есть папка сайта — у разных хостингов она называется по-разному:
public_html,www,htdocs. Загрузите в неё содержимое своей папки сайта — так, чтобыindex.htmlлежал прямо в ней. Загрузить можно через файловый менеджер панели или программой для SFTP, например бесплатной FileZilla: адрес сервера, логин и пароль даёт хостинг. - https. Включите в панели хостинга бесплатный сертификат (обычно от Let's Encrypt). Без него браузеры помечают сайт как небезопасный.
Обычный FTP передаёт пароль и файлы без шифрования, и их можно перехватить в сети. Подключайтесь по SFTP или FTPS, если хостинг их поддерживает, и не храните пароль от хостинга в открытом виде в файлах сайта.
GitHub Pagesбесплатно, для учебного сайта
Для учебного, личного сайта или портфолио подойдёт GitHub Pages — бесплатная публикация статических сайтов:
- Зарегистрируйтесь на GitHub и создайте открытый репозиторий (хранилище файлов проекта).
- Загрузите в него файлы сайта: «Add file» → «Upload files».
index.htmlдолжен лежать в корне репозитория. - В настройках репозитория (Settings) откройте раздел «Pages». В «Build and deployment» выберите источник «Deploy from a branch», ветку
mainи папку/ (root), нажмите «Save». - Через несколько минут (обычно до десяти) сайт откроется по адресу
https://имя.github.io/репозиторий/.
Подробная инструкция — в документации GitHub Pages. Для интернет-магазинов и коммерческих сервисов GitHub Pages не предназначен — для них нужен хостинг.
Проверьте после выкладки
- Сайт открывается по адресу и по
https://. - Все картинки на месте. Пропала картинка — почти всегда регистр букв: сервер различает
Photo.jpgиphoto.jpg, а Windows — нет. - Работают все ссылки между страницами.
- Сайт нормально выглядит на телефоне.
Подводные камни
- Открывается список файлов или ошибка 403/404 вместо главной — нет
index.htmlв корне папки сайта (часто загрузили саму папкуsite, и главная оказалась по адресу/site/) или файл называетсяIndex.html. - Ссылки и картинки с путём от корня (
/images/…) ломаются, если сайт лежит не в корне домена, как в GitHub Pages:/ведёт наимя.github.io, а не в папку репозитория. Пишите относительные пути. - Пути на диск (
C:\…,file:///…) на сервере не работают — их надо заменить относительными. - Картинки и шрифты по
http://на странице сhttps://браузер блокирует или пытается загрузить по https. Пишите ссылки на свои файлы относительными, а на чужие — сhttps://. - Формы не отправляются — статический хостинг не умеет обрабатывать данные. Для форм нужна программа на сервере (например, на PHP), а значит, хостинг с её поддержкой.