JavaRush /Курсы /Claude Code SELF /Как устроен интернет: деплой

Как устроен интернет: деплой

Claude Code SELF
5 уровень , 2 лекция
Открыта

1. «Работает у меня» ≠ «открывается у всех»

— Смотри, у тебя ровно та самая классика, — Лёха заходит не с терминов, а с того, что Тёма уже прожил утром. — Собрал страницу, у тебя в браузере — красота. Скидываешь кому-нибудь «зацени» — а он: «не открывается». Знакомо?

— Прям сегодня, — Тёма морщится. — У меня лендинг есть, а для Антона его как бы и нет.

— Вот. И это не глюк, это закон. «Работает у меня» и «открывается у всех» — это две совершенно разные вещи. Пока ты этого не развёл, фраза «выложить сайт в интернет» для тебя пустой звук, набор слов.

— Ну так а где он должен лежать, чтоб у всех? — Тёма не понимает. — Не у меня на ноуте — а где?

— Вот это правильный вопрос. С него и начнём разбирать, что вообще такое интернет. После этого «выложить» перестанет быть магией.

2. Сервер — это просто всегда включённый компьютер

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

— Всегда включён? Прям совсем?

— Совсем. В этом весь смысл. Твой ноутбук ты вечером закрыл, в сумку убрал, домой унёс — всё, он спит, он с тобой. Никому он сайт раздать не может. А сервер стоит где-то в дата-центре, гудит себе круглосуточно, и любой человек в любой момент может к нему обратиться и забрать файлы. Он для того и существует — быть на связи, когда тебя нет.

— Стоп, — перебивает Тёма. — Не сходится. Я ж в мессенджере другу картинку кидаю — и она доходит. Мой телефон ему её и отдаёт. Зачем тут какой-то сервер ещё.

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

— То есть и там, где я думал, что все работает без всякого сервера, — он всё равно есть.

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

Тёма переваривает. Раньше думал про интернет как про какое-то общее облако, куда вещи попадают сами. А оказывается — просто другой компьютер, который не спит. До странного приземлённо.

3. Два адреса: цифры для машин, имя для людей

— Раз серверов много, к нужному надо как-то обратиться. По адресу, — продолжает Лёха. — И адресов, прикинь, два вида — но это та же пара, как у обычного дома.

— А зачем два-то? — не понимает Тёма. — Один же проще.

— Затем, что один для машин, другой для людей. Первый — IP. Это числовой адрес, типа 192.0.2.1. Точный, но для человека нечитаемый — голые координаты цифрами. Компьютеры между собой общаются именно так, им буквы не нужны.

— Ну цифры так цифры. А второй тогда какой?

— Второй — домен. Человеческое имя сервера, вроде javarush.com. Его легко запомнить, легко набрать. Это как вывеска. Ты же не говоришь другу «встретимся у здания по координатам пятьдесят сорок пять, тридцать пятьдесят два». Ты говоришь «у кофейни Чика на углу». Домен — та самая вывеска/название вместо координат.

— Погоди, а как они между собой связаны-то? — цепляется Тёма. — Имя и цифры.

— За кулисами домен автоматически превращается в IP. Ты набираешь удобное имя, а под капотом оно разворачивается в те самые цифры, по которым машины друг друга находят. Тебе достаточно знать имя — остальное делается само.

4. Path — какой именно файл на сервере

— Ещё одно слово, и с адресами закончим. На сервере обычно лежит куча файлов. Как сказать, какой именно нужен? К адресу добавляют path — путь.

Лёха показывает на экране три строчки подряд:

192.0.2.1                      # IP — числовой адрес сервера
example.com                    # домен — то же место, но с человеческим именем
example.com/home/about.html    # path — какой именно файл на этом сервере

— Возвращаемся к дому, — продолжает Лёха. — Домен — это здание. А path — какой прилавок внутри здания. example.com/home/about.html читается так: «на сервере example.com открой файл home/about.html». То есть адрес сайта — не магическая строка, а две понятные части: чьё это место и куда именно внутри идти.

— А этот home/about.html — он откуда берётся?

— А это буквально путь к файлу на диске сервера. Так изначально и было задумано: на сервере папка home, в ней файл about.html, ты по адресу прямо на него и попадаешь. У современных сайтов многие файлы на лету генерируются, но логика та же — адрес файла ведёт к конкретному месту, как папка на твоём компе.

Тёма сам подводит итог, по привычке:

— То есть домен — это имя компьютера в сети, а path — что именно там взять и где.

— Упрощенно конечно, но все верно.

5. Хостинг — сервер напрокат

— Так, стоп, — Тёма напрягается. — Сервер, дата-центр... у меня нет никакого сервера в дата-центре. И денег на него нет. Как я тогда выложу-то?

— А вот тут хорошая новость, — Лёха явно ждал этого. — И не надо. Есть хостинг. Это сервис, который делает всю серверную часть за тебя. Смотри, как просто: ты отдаёшь ему свои файлы — свою страницу. Он кладёт их на свой сервер, тот самый всегда включённый. И возвращает тебе публичную ссылку. Всё.

— И всё? Никакого администрирования?

— Никакого. Не надо строить дата-центр, не надо становиться системным админом, не надо ничего настраивать в железе. Для простой статической страницы вроде твоего лендинга есть бесплатные хостинги: отдал файлы — получил ссылку — готово. И эту ссылку уже можно слать кому угодно. Антон откроет с телефона, заказчик откроет со своего, кто угодно откроет.

У Тёмы заметно расслабились плечи. Самое неприятное слово — «сервер в дата-центре» — оказалось чужой заботой. Его дело — отдать файлы и забрать ссылку.

6. Деплой — выкладываем файлы наружу

— И теперь — главное слово дня, ради него всё и затевалось. Деплой. От английского deploy. По-человечески это копируешь свои файлы туда, где они доступны не только тебе — с твоего ноутбука на сервер хостинга.

— Копируешь, — повторяет Тёма. — То есть файл буквально копируется куда-то в дата-центр?

— Копия файла загружается и сохраняется на всегда-включённую машину. И вот теперь вернёмся к твоей утренней загадке. Почему у тебя работает, а у Антона нет? Потому что пока страница лежит только на твоём ноутбуке — она доступна только тебе. Антон в твой комп залезть не может, и слава богу. А как только ты сделал деплой — скопировал файлы на хостинг — страница оказалась на сервере с публичным адресом. И теперь её открывает кто угодно.

Лёха выводит на экран то самое различение, которое Тёма утром нащупал интуитивно, а теперь видит словами:

«Работает у меня (локально)»  ≠  «открывается у всех (наружу)»

— Запомни это крепко, это просто, но важно. Локально — это на твоей машине, для тебя одного. Наружу — это на сервере, для всех. А деплой — мост между этими двумя состояниями. Именно его ты сегодня и построишь. Выложишь лендинг так, что Антон откроет ссылку со своего телефона.

Тёма смотрит на стрелочку между «локально» и «наружу» и понимает, что вся утренняя паника была про этот один мостик, которого он не видел. «Выложить сайт в интернет» перестало быть заклинанием. Это понятное действие: скопировать файлы на сервер хостинга и забрать ссылку для всех. Осталось — сделать.

1
Задача
Claude code, 5 уровень, 2 лекция
Недоступна
Снимок состояния через /context
Снимок состояния через /context
1
Задача
Claude code, 5 уровень, 2 лекция
Недоступна
/compact с сохранением рабочей рамки
/compact с сохранением рабочей рамки
Комментарии
ЧТОБЫ ПОСМОТРЕТЬ ВСЕ КОММЕНТАРИИ ИЛИ ОСТАВИТЬ КОММЕНТАРИЙ,
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ