AI и сайты
Как перенести сайт из нейросети в интернет
Как собрать выданный ИИ код в проект, найти недостающие файлы и опубликовать результат без локального сервера.
Нейросеть часто выдаёт сайт частями: HTML в одном блоке, CSS в другом, JavaScript в третьем. Для публикации эти части нужно разложить по файлам и проверить ссылки между ними. Установка Node.js или сборщика не требуется, если в ответе нет React, Vue, TypeScript и команд `npm run build`. ## Как собрать обычный HTML-проект HTML сохраняется в `index.html`, стили — в `style.css`, скрипт — в `script.js`. Внутри `index.html` должны быть подключения: ```html <!doctype html> <html lang="ru"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet" href="style.css"> <title>Название сайта</title> </head> <body> <main>Содержимое страницы</main> <script src="script.js"></script> </body> </html> ``` Файлы кладутся в одну папку. Если нейросеть сослалась на `assets/photo.webp`, нужен каталог `assets` и сам файл `photo.webp`. Текстовая ссылка не создаёт изображение автоматически. ## Как понять, нужна ли сборка Импорты вида `import React from 'react'`, файл `package.json` и папка `src` указывают на проект со сборкой. В этом случае в интернет публикуется результат команды сборки — обычно папка `dist` или `build`, а не исходный код. ```bash npm install npm run build ``` Если команда завершилась без ошибки, в Deploya загружается содержимое созданной папки `dist`. Файл `package.json` сам по себе сайт не запускает: Deploya обслуживает статические файлы и не исполняет пользовательский серверный код. > Место для скриншота: слева исходная папка проекта, справа готовая папка dist с index.html и assets. ## Частые поломки после генерации Ссылки на изображения иногда ведут на временный адрес сервиса генерации. Такие картинки лучше скачать в проект. Ещё одна проблема — обработчик формы, который отправляет данные на несуществующий `/api/contact`. Статическая страница не создаёт этот API. Для заявок можно подключить [формы Deploya](https://docs.deploya.ru/forms) или внешний обработчик. Перед публикацией полезно открыть `index.html` в браузере и проверить консоль разработчика. Сообщение `404` указывает на отсутствующий файл, а `Cannot read properties of null` — на JavaScript, который ищет элемент с неправильным `id` или запускается раньше разметки. После исправления путей проект загружается в Deploya как папка или ZIP. Системный поддомен и HTTPS появляются без отдельной настройки веб-сервера.