Развертывание веб сайта на локальной машине
Жмем кнопку "Получить ингредиенты" и скачиваем готовые под наш проект index.js, restore.js, config.json, package.json. Это действие также изменит, инструкции по распаковке и запуску на этой странице!Ингредиенты
Скачайте и установите
- Node.js v18.18.0
- MongoDB v8.0
- Для локальной машины под windows скачайте "mongodb-database-tools-windows"
- Visual Studio Code
SSL сертификат
Если у вас нет SSL сертификата, создайте его:- Установите OpenSSL Light
- В строке поиска windows напишите cmd и запустите "командную строку". Скопируйте в командную строку инструкцию ниже
cd C:\Program Files\OpenSSL-Win64\bin $$ openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -days 365 -nodes -addext "subjectAltName = DNS:mysite.comФайлы key.pem и cert.pem в папке "C:\Program Files\OpenSSL-Win64\bin" это ваш сертификат на год.
Импорт сертификатов в Windows
- Нажмите клавиши Win+R, введите certmgr.msc и нажмите Enter
- В первой колонке нажмите папку «Доверенные корневые центры сертификации» > «Сертификаты».
- Над колонкой в меню нажмите «Действие» > «Все задачи» > «Импорт».
- В поле «Тип файла» поставьте «Все файлы» и укажите сертификат cert.pem.
Перенаправление домена на локальную машину
- Перейдите в папку Диск C: > Windows > System32 > drivers > etc
- Скопируйте hosts на рабочий стол > правой кнопкой откройте с помощь "Блокнота"
- Добавьте в конец строчку "127.0.0.1 mysite.ru" без кавычек
- Обновленный hosts скопируйте обратно в папку "C: > Windows > System32 > drivers > etc" заменив прежний.
Новый проект
- Создайте папку проекта, например /mysite
- Поместите в нее ингредиенты: index.js, restore.js, config.json, package.json и созданные файлы сертификата key.pem и cert.pem вместе с резервной копией.
Установка модулей
- Откройте Visual Studio Code, перейдите в папку вашего проекта и в терминале VS Code исполните команду:
npm installРаспаковываем
- Запускайте
index.js, нажав "Run and Debug" в "Visual Studio Code"
;(async () => {
console.log('попытка начать')
require('./app/clickplayer/index.js')
const express = require('express')
const app = express()
const https = require('https')
const key = fs.readFileSync(ROOT + '/key.pem', 'utf8')
const cert = fs.readFileSync(ROOT + '/cert.pem', 'utf8')
const server = https.createServer({key, cert}, app).listen(443)
await cb.Run(app, server)
app.get('*', cb.Render)
console.log('сервер онлайн', new Date().toString())
})()Пуск
- Нажимайте "Run and Debug" еще раз и проект онлайн на локальной машине