TransWikia.com

Как из документов с кодом получается сайт в интернете?

Stack Overflow на русском Asked by strike X100 on August 30, 2021

Я изучаю web-программирование. Уже знаю основы html, css, сейчас изучаю JavaScript. Я пишу код в блокноте и у меня уже есть документы с кодом html и css. Но для меня не понятен процесс создания сайта. Нашел в интернете, что необходимо выбрать доменное имя, оплатить хостинг, после чего загружать файлы на сервер.

Итак, вопрос: собственно как из документов с кодом получается сайт в интернете?

2 Answers

На компьютере, который работает сервером, должна быть установлена специальная программа. Она тоже называется сервером. Основной алгоритм работы любой программы сервера - ждать запросов от клиентов и на каждый полученный запрос отправлять ответ. Какой вид имеют запрос и ответ, определяется типом сервера. Для веб-сайтов применяются веб-сервера. Они общаются с клиентами (в вебе клиент - это, как правило, браузер) по протоколу HTTP или HTTPS (протокол - это как раз описание формата запросов и ответов). Получив запрос, программа-сервер определяет соответствие URL (Интернет-адрес, который пользователь набирает в адресной строке браузера) и пути к файлу на диске ПК. Затем она либо отправляет клиенту файл с диска (чаще всего это html-документ), либо сообщает об ошибке (если файла на диске нет, или запрос был неправильный). Страницы статических сайтов (html-документы) лежат в специальной папке на диске ПК-сервера, откуда их и берёт программа-сервер. Что это за папка, зависит от программы сервера и её настроек. Ещё бывают динамические сайты, когда файл генерируется сервером "на лету", когда поступает запрос клиента. Но это уже отдельная тема.


Хостинг предоставляет ресурсы постоянно работающего ПК, на котором установлены все нужные программы. Этого достаточно, чтобы сайт был доступен всем в Интернете по ip-адресу компьютера-сервера. Но люди обычно не запоминают ip-адрес сайтов + он может меняться по техническим причинам. Поэтому обычно покупают ещё доменное имя. За соответствие ip-адресов и доменных имён отвечает служба DNS. Когда пользователь вводит в адресной строке браузера адрес сайта, содержащий доменное имя, браузер отправляет запрос к DNS-серверу. DNS-сервер возвращает в ответе ip-адрес, соответствующий доменному имени.


Вообще-то, если установить программу-сервер (например, Apache или NGinx) на Ваш собственный ПК, то он тоже сможет хостить сайт. Но так сейчас обычно не делают по нескольким причинам:

  1. Во-первых, сайт будет доступен только, пока Ваш ПК включен.
  2. Во-вторых, провайдеры обычно предоставляют клиентам динамические ip-адреса. То есть при каждом подключении к Интернету у Вас будет разный ip-адрес. В принципе, есть способы, позволяющие привязать динамический ip-адрес к доменному имени, но это всё долго, сложно и не очень надёжно. Можно получить у провайдера статический ip (он не меняется между подключениями). Но это стоит денег.
  3. Расходы на электричество, статический ip-адрес и более быстрый расход ресурса ПК из-за постоянной работы вполне сопоставимы с расходами на хостинг.

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

Answered by Yury Plinto on August 30, 2021

Вам нужно решить две задачи: хостинг и домен.

  1. Хостинг. Сайт должен лежать на каком-то компьютере с выходом в интернет. Желательно, чтобы компьютер был включен всегда. Быстрый вариант "для чайника" - положить все файлы в Гугл Драйв и расшарить их как сайт. Менее быстрый вариант - найти хостинг. Бесплатных хостингов существуют сотни, если не тысячи, у меня первым в выдаче выпал Hostinger, а вообще на слуху narod.ru, ucoz.ru.

    Теперь ваш сайт лежит в интернете по некоему неудобоваримому адресу, типа 123.123.123.123/userololo/www/index.html, а то и похуже. Давайте регистрировать клевый домен!

  2. Домен. Домен первого уровня (TLD, top level domain) - это .ru, .com, .io, .xyz и прочие. Такой нам регистрировать пока не по зубам.

    Домен второго уровня (superdomenololo.com или superdomenololo.ru) стоит $5-10 долларов в год. Купить его нам поможет Регистратор. Популярные регистраторы - godaddy.com, nic.ru, reg.ru, тысячи их. После покупки, следуйте инструкциям регистратора и хостера. Вам помогут отредактировать технические записи, чтобы адрес tvojdomen.ru указывал на компьютер с айпи 123.123.123.123 (например).

    Домен третьего уровня часто бесплатно выдают хостеры. То есть если ваш хостер некий hosterololo.ru, то он может вам даром позволить "сесть на хвост" своему домену и разместить ваш сайт по адресу mojnovijsajt.hosterololo.ru. Что тоже неплохо запоминается.

Удачи!

Answered by Sergey Snegirev on August 30, 2021

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP