На уровне 11 ты уже усвоил важное правило: ключи доступа и пароли — это секреты, и их нельзя писать прямо в коде. Но тогда возникает законный вопрос: а где же их держать, если коду они всё-таки нужны? Сейчас, когда мы готовимся выкладывать проект на хостинг, ответ становится особенно важным. И ответ этот — .
Почему ключ в коде — это плохо
Вспомним, почему секрет нельзя вписывать в код. Когда ты коммитишь проект в Git и подключаешь его к хостингу, весь код уезжает в репозиторий. И если ключ написан прямо в файле, он уедет вместе с ним. Дальше его может увидеть кто угодно с доступом к репозиторию — а значит, воспользоваться им от твоего имени.
Это как написать пароль от карты прямо на самой карте. Карту ты кому-то показал — и пароль тут же ушёл вместе с ней. Секрет, который лежит в коде, перестаёт быть секретом.
Переменные окружения — секретный «сейф» рядом с кодом
Решение — хранить секреты отдельно от кода. Для этого и придуманы переменные окружения: это секретные настройки, которые лежат рядом с программой, но вне самого кода. У каждой такой настройки есть имя и значение — например, имя API_KEY и значением твой ключ.
Работает это так:
- ты кладёшь ключ в переменную окружения, а не в код;
- код, когда ему нужен ключ, берёт его оттуда по имени;
- в Git уезжает только код — без секрета внутри.
Получается аккуратно: код можно спокойно показывать и выкладывать, а ключ остаётся в защищённом «сейфе» отдельно.
На хостинге для этого есть специальное место
Самое удобное, что хостинг — например, Vercel — заранее знает про эту проблему. У него есть специальный раздел, куда ты вписываешь свои переменные окружения: имя и значение. Хостинг хранит их в секрете и подставляет в проект уже на сервере, когда тот работает. В код они при этом не попадают, а в Git — тем более.
Если не знаешь, какие переменные окружения нужны твоему проекту, спроси Claude: он подскажет, какие секреты используются в коде и под какими именами их завести на хостинге. Так ничего не забудешь и не оставишь случайно ключ в коде.
Попробуй
Терминального задания нет. Запомни цепочку: ключи и пароли в код не пишут; их хранят в переменных окружения — секретных настройках рядом с программой; на хостинге для этого есть отдельное защищённое место. Так твои секреты не попадут ни в Git, ни в чужие руки — и проект можно спокойно выкладывать в мир.