Всем привет!
У меня проблемка. Перерыл google и satackoverflow но не могу найти решения.
Написал сайт на Node+react+mongo. Соответственно все делал на локале (Запуск сервера и коддинг). Теперь взял пробное место на хостинге Timeweb. Залил туда проект, установил на сервере Node + все зависимости проекта. Код работает если вызываю команду node app.js, который запускает этот код
const express = require('express');
const MongoClient = require('mongodb').MongoClient;
// const path = require('path');
// const logger = require('morgan');
// const multer = require('multer');
const bodyParser = require('body-parser');
const db = require('./config/db');
const app = express();
const port = 8000;
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({extended: true}));
app.use(express.static(`${__dirname}/public`));
const dirname = __dirname;
MongoClient.connect(db.url, (err, database) => {
if (err) return console.log(err)
require('./server/routes')(app, database, dirname);
app.listen(process.env.PORT || port, () => { console.log(process.env.PORT || port) })
})
и выводит в консоль соответствующий порт 8000.
Вопрос собственно в том, как мне сделать чтобы мое приложение запускалось и все рендерилось под доменом так же как я это видел на локале.
Можно хотябы ссылку на какуюто информаию или туториал.
Извините а такой банальный вопрос.
Всем спасибо заранее!)
Ответ
Зависит от того, что у вас там за сервер. Для nginx делать так:
Для начала сам nginx установить sudo apt-get -y install nginx
Открыть конфиг файл sudo nano /etc/nginx/sites-available/default и написать там:
server {
listen 80;
server_name имя_вашего_домена;
location / {
proxy_pass http://127.0.0.1:8000;
proxy_set_header Host $host;
}
}
Перезапустить nginx sudo service nginx restart
Остаётся только в настройках DNS вашего домена направить его на ip этого сервера.
Комментариев нет:
Отправить комментарий