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 появляются без отдельной настройки веб-сервера.

Все статьи