Форум программистов, компьютерный форум, киберфорум
Node.js
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.65/75: Рейтинг темы: голосов - 75, средняя оценка - 4.65
9 / 9 / 5
Регистрация: 22.04.2015
Сообщений: 305

Новичок Nodejs как на хостинге запустить сервер?

07.07.2016, 14:29. Показов 15643. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток!
Я чайник и только начал изучать Nodejs.
Ситуация такая у меня есть под домен на платном хостинге.
Хочу запустить сервер с класcическим результатом: Hello World!
На хостинге установлен Nodejs
На хостинге есть папка sj в ней папка public_html
Например: если закину в эту папку index.html с содержанием:
HTML5
1
2
3
4
5
6
7
8
<html>
<head>
     <title>Hello World!</title>
</head>
<body>
     Hello World!
</body>
</html>
После чего в браузере набираю [адрес сервера] и получаю: Hello World!

Вопрос: как с помощью Nodejs выдать по адресу [сервера]: Hello World! ??????

По урока создаю скрипт на хостинге server.js
JavaScript
1
2
3
4
5
6
7
8
var http = require('http');
 
http.createServer(function (req, res) {
  res.writeHead(200, {'Content-Type': 'text/plain'});
  res.end('Hello World\n');
}).listen(8080);
 
console.log('Server running on port 8080.');
кладу скрипт в папку sj/public_html
подключаюсь через SSH, ввожу: node sj/public_html/server.js
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
~ $ node sj/public_html/server.js
Server running on port 8080.
events.js:85
      throw er; // Unhandled 'error' event
            ^
Error: listen EADDRINUSE
    at exports._errnoException (util.js:746:11)
    at Server._listen2 (net.js:1156:14)
    at listen (net.js:1182:10)
    at Server.listen (net.js:1267:5)
    at Object.<anonymous> (/home/i/dom/sj/public_html/server.js:6:4)
    at Module._compile (module.js:460:26)
    at Object.Module._extensions..js (module.js:478:10)
    at Module.load (module.js:355:32)
    at Function.Module._load (module.js:310:12)
    at Function.Module.runMain (module.js:501:10)
После чего иду по адресу [сервера] и ничего не вижу, никакого Hello World ((((((((((((

Для проверки, установил Nodejs себе на ПК и сделал аналогично варианту хостинга
создал server.js файл
JavaScript
1
2
3
4
5
6
7
8
var http = require('http');
 
http.createServer(function (req, res) {
  res.writeHead(200, {'Content-Type': 'text/plain'});
  res.end('Hello World\n');
}).listen(8080);
 
console.log('Server running on port 8080.');
Сакинул его на C:/
запустил cmd и пишу: node c:/server.js
Запускаю браузер и захожу на http://localhost:8080
Да, я вижу Hello World!

Но как же я могу увидеть Hello World! используя хостинг и Nodejs, пройдя по адресу под домена ???
Помогите пожалуйста разобраться
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
07.07.2016, 14:29
Ответы с готовыми решениями:

Как запустить сервер (хост) на хостинге?
Есть сервер(я не знаю как назвать то приложение которое запускает ServiceHost). Есть интернет приложение, где могут взаимодействовать...

Как запустить сессию в nodejs, express?
Здравствуйте, и ещё один вопрос. Как осуществить работу сессий в nodejs и фрэймворком express? Всё что я пока что знаю, это объявления...

Ошибка nodejs приложения на хостинге
Здравствуйте, столкнулся с такой вот проблемой, не работает nodejs приложение (https://github.com/BogdanZzz/Chatandregistr) на хостинге...

7
Ренегат
Эксперт HTML/CSS
 Аватар для BANO
1740 / 1085 / 386
Регистрация: 06.08.2014
Сообщений: 5,203
Записей в блоге: 1
07.07.2016, 19:27
замените
JavaScript
1
}).listen(8080);
на
JavaScript
1
}).listen(80);
ошибка гласит, что порт уже занят

для того, чтобы отрисовался ваш файл нужно использовать другой код...

Добавлено через 4 минуты
а ещё нужно настроить проксирование на вашем хостинге...
1
9 / 9 / 5
Регистрация: 22.04.2015
Сообщений: 305
08.07.2016, 14:57  [ТС]
BANO, 80 выдал ту же ошибку, очевидно порт тоже занят.
исправил на .listen(3060); и да ошибка ушла,
[JS]~ $ node sj/public_html/server.js
Server running on port 3060[JS]
но ввожу в ьраузер адрес под домена sj.....
и ничего нет
HTML5
1
2
3
4
5
6
7
8
9
10
Access forbidden!
 
You don't have permission to access the requested directory. There is either no index document or the directory is read-protected.
 
If you think this is a server error, please contact the webmaster.
 
Error 403
[COLOR="Red"][adres server][/COLOR]
Fri Jul 8 14:56:19 2016
Apache/2.2.29 (Gentoo) PHP/5.4.45-pl0-gentoo
Пожалуйста дайте пожалуйста ссылочку или ключевые слова по которым искать
0
Ренегат
Эксперт HTML/CSS
 Аватар для BANO
1740 / 1085 / 386
Регистрация: 06.08.2014
Сообщений: 5,203
Записей в блоге: 1
08.07.2016, 14:59
Granfury, я же говорю, там поддомен не поможет, надо проксирование настраивать
0
9 / 9 / 5
Регистрация: 22.04.2015
Сообщений: 305
11.08.2016, 14:34  [ТС]
Пожалуйста дайте ссылку на статью как настроить проксирования.
Руководство как используя хостинг и node.js, выдать по адрессу моего подДомена //sj. domainName. su/ страницу с текстом "Hello World" ?
Спасибо!
0
9933 / 2936 / 494
Регистрация: 05.10.2013
Сообщений: 7,965
Записей в блоге: 232
11.08.2016, 15:36
У меня нет своего хостинга. Я для изучения node.js использую два бесплатных. У меня получились hello, world по этим пошаговым официальным инструкциям:
2
 Аватар для Vladislav WebDev
327 / 217 / 97
Регистрация: 04.11.2012
Сообщений: 638
11.08.2016, 17:12
Цитата Сообщение от Granfury Посмотреть сообщение
Пожалуйста дайте ссылку на статью как настроить проксирования.
Руководство как используя хостинг и node.js, выдать по адрессу моего подДомена //sj. domainName. su/ страницу с текстом "Hello World" ?
Спасибо!
Настройте сервер, нджинкс например, что-то типа того (если нода работает на 3000 порту):
Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
server {
    listen 80;
    server_name nodejs-site.ru;
    root /var/www/nodejs-site.app/public;
    
    location ~* ^.+.(jpg|jpeg|gif|png|ico|css|zip|tgz|gz|rar|bz2|pdf|txt|tar|wav|bmp|rtf|js|flv|swf|html|htm)$ {
        root /var/www/nodejs-site.app/public/;
    }
 
    location / {
        proxy_read_timeout 120s;
        proxy_pass [url]http://127.0.0.1:3000;[/url]
        proxy_set_header Host $host;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
    }
}
1
Coding is art
Эксперт JS
540 / 423 / 154
Регистрация: 04.09.2013
Сообщений: 1,066
14.08.2016, 23:34
Если объяснять просто, то за отображение ( не нода ) отвечает apache или nginx, который автоматически ( при заходе на поддомен ) ( т.е. 80 порт ) пытается запустить php/html файл.. js ( nodejs ) по такому принципу не получиться запустить..
что тут нужно понимать.. в nodejs уже встроен "apache" ( только это не апач, но для понимания пусть будет им ), когда ты говоришь ноду запустить сервер и слушать порт, он по сути делает то же самое что и апач ( которому говоришь слушать порт и вытягивать файлы из такой-то директории ).
НО т.к. на сервере стоит апач и у него уже забиндин порт 80, то нод выдаёт тебе ошибку ( мол порт занят EADDRINUSE ).

Решение: для решения этой проблемы тебе нужно запускать ноду на свободном порту ( этот порт может быть закрыт для внешнего доступа даже ), но настоить апач или nginx таким образом, что бы заходя на 80 порт он тебя "виртуально" перебрасывал на порт который у тебя в ноде стоит.
ProxyPass и ProxyPassReverse используются для этих целей ( выше есть пример, а так же в сети их полно )

Таким образом, человек заходя на 80 порт "виртуально" ( апачем ) перебрасывается на другой порт где работает nodejs.

Кстати, если у тебя порт открыт, то ты должен мочь зайти на него по адресу: yourwebsite.zoneort
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
14.08.2016, 23:34
Помогаю со студенческими работами здесь

Для чего нужен iisnode при хостинге nodejs под IIS?
Подскажите, пожалуйста. Я всегда хостил ноду на линукс-машинах и не понимаю этой проблемы. На одном сервере используется windows и...

Как запустить скрипт Python на хостинге
Здравствуйте! Заранее прошу прощения - с Python сталкиваюсь впервые. Ситуация такова: На хостинге есть некая папочка try, в которой на...

Как запустить .ехе файл на сервере, хостинге?
Как запустить .ехе файл на сервере. Нужно запустить и настроить ехе программу на сервере чтобы она работала постоянно, как осуществить...

Как можно раскрутить сервер CS 1.6 расположенный на хостинге?
Помогите с раскруткой

Как развернуть socket сервер на хостинге - Клиент Серверное приложение
Здравствуйте! Столкнулся с такой проблемой: У меня есть клиент и сервер, написанные на сокетах namespace Server_For_Educational_Office ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru