Что такое localhost — и почему ссылку на него нельзя отправить другу

Собрал приложение, ИИ-редактор пишет «открой localhost:3000», ты открываешь — работает, красота. Радостно кидаешь ссылку другу: «зацени!». А у него — пустота, «не удаётся подключиться». Ты не сломал ничего. Просто вот сюрприз: localhost у каждого свой. Эта ссылка у друга ведёт не в твой компьютер, а в его собственный — где твоего приложения, понятно, нет.
Звучит странно, но в этом весь смысл. Разберёмся за пять минут — и ты перестанешь путать «у меня работает» с «работает у всех».
Что такое localhost простыми словами
localhost — это имя твоего собственного компьютера, если смотреть на него из него же. Технически за этим именем стоит адрес 127.0.0.1 — он называется «петлёй» (loopback): запрос на него не уходит в сеть, а разворачивается и возвращается обратно в ту же машину.
Сравни с домашним адресом. Если ты напишешь на конверте «мне, домой», письмо дойдёт только если ты бросишь его в свой почтовый ящик. Дашь такой конверт другу — он принесёт его к себе домой. localhost ровно такой: «домой» означает разное место для каждого.
Поэтому приложение на localhost видит только тот, кто сидит за этим компьютером. Это не баг — это удобно: можно спокойно тестировать, пока никто посторонний не видит черновик.
При чём тут :3000 — это порт
Адрес — это здание, а порт (:3000, :8080, :5173) — номер квартиры в нём. На одном компьютере одновременно работают десятки программ, и каждая, кто слушает сеть, занимает свой порт. Твой фронтенд сидит на 3000, сервер базы — на 5432, ещё что-то — на 8080. Браузер по номеру порта понимает, к какой именно программе стучаться.
Отсюда две частые ошибки новичка:
- «Port already in use» — ты запустил приложение дважды, и квартира
3000уже занята первым запуском. Закрой старый процесс или возьми другой порт. - Открыл не тот порт — приложение крутится на
5173, а ты ломишься на3000. Смотри, что именно написал редактор в консоли при запуске.
Почему это важно для тебя
Главное, что стоит унести: localhost — это черновик, а не публикация. Пока приложение живёт на нём, его не существует для интернета — ни для друга, ни для Google, ни для твоего телефона (если он не в той же сети).
Чтобы приложение увидели другие, его нужно задеплоить — перенести на сервер в облаке, который работает круглосуточно и доступен по нормальной ссылке вида мой-проект.ру. Вот тогда localhost:3000 превращается в адрес, который можно отправить кому угодно.
Это же объясняет классическую боль: «на моём компе всё работало, а после деплоя сломалось». Часто причина в том, что локально приложение ходило к сервисам по localhost (например, к базе на 127.0.0.1), а в облаке этого localhost уже нет — там API и база живут по другим адресам, которые надо прописать в настройках.
Где ты встретишь localhost
Везде, где что-то запускается на твоей машине: ИИ-редактор поднимает дев-сервер на localhost, база данных стартует на localhost, инструменты для отладки открываются на localhost. Даже когда ты пробуешь serverless-функции локально, они эмулируются на этом же адресе. Это рабочая комната, где ты собираешь приложение до того, как показать его миру.
Чем localhost отличается от 127.0.0.1?
Практически ничем — это два имени одного и того же. 127.0.0.1 — числовой адрес петли, а localhost — человекочитаемое имя, которое на него указывает. В браузере можно набрать любое, результат один: запрос вернётся в твой же компьютер.
Почему ссылку с localhost никто не может открыть?
Потому что у каждого устройства localhost ведёт в него самого. Когда друг открывает localhost:3000, его браузер ищет приложение на его компьютере, а там пусто. Чтобы дать рабочую ссылку, приложение надо выложить в интернет (задеплоить) — тогда у него появится публичный адрес, одинаковый для всех.
Можно ли показать localhost кому-то, не деплоя?
На время — да, через «туннель» (например, инструменты вроде ngrok): они дают временную публичную ссылку, которая пробрасывает запросы в твой localhost. Удобно для быстрой демки, но это всё ещё твой компьютер: закроешь ноут — ссылка погаснет. Для постоянного доступа нужен деплой.
Короткие уроки-истории, симулятор агента и ежедневная практика — в нашем мобильном приложении. Бесплатно.





