Запусти сервер на собственном компьютере и пойми, почему его больше никто не видит.
Открыть этот урок в KodokonКогда ты делаешь сайт, ты не станешь публиковать его в интернете после каждой правки. Ты запускаешь сервер на собственном компьютере и открываешь его в своём браузере. У этой машины, у твоей, есть зарезервированное имя: localhost, буквально "локальный узел". Есть у неё и зарезервированный IP-адрес, 127.0.0.1, который на любой машине мира всегда означает "я сам".
Но компьютер может держать несколько серверов одновременно. Как понять, к какому из них ты обращаешься? С помощью портов. Если IP-адрес - это адрес дома, то порт - номер квартиры: число от 1 до 65535, которое указывает программу, обязанную ответить. Некоторые номера общеприняты: порт 80 для http, 443 для https. При разработке часто берут 3000, 5173 или 8000. Порт пишется после имени через двоеточие: http://localhost:8000.
cd my-site
python3 -m http.server 8000
Serving HTTP on 0.0.0.0 port 8000 (http://0.0.0.0:8000/) ...Оставь это окно терминала открытым: пока команда работает, сервер отвечает. Теперь открой в браузере http://localhost:8000, и ты увидишь файлы из папки my-site. Чтобы остановить сервер, вернись в терминал и нажми Ctrl + C.
Зачем эти сложности, если двойной клик по index.html тоже открывает страницу? Затем, что двойной клик открывает файл по адресу file:///C:/Users/..., а не по http://. А некоторые возможности веба наотрез отказываются работать вне протокола http: запросы к серверу, модули JavaScript, отдельные шрифты. Ты получишь непонятные ошибки, которые исчезнут как по волшебству, стоит тебе зайти через localhost.
lsof -i :8000
COMMAND PID USER FD TYPE NODE NAME
python3 4821 sarah 3u IPv4 TCP *:8000 (LISTEN)