Запустить node js на хостинг

Дешевый хостинг
Промо-код для получения скидки: 42b081-10

После чего в браузере набираю [адрес сервера] и получаю: Hello World!

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

По урока создаю скрипт на хостинге server.js

После чего иду по адресу [сервера] и ничего не вижу, никакого Hello World ((((((((((((

Для проверки, установил Nodejs себе на ПК и сделал аналогично варианту хостинга
создал server.js файл

Сакинул его на C:/
запустил cmd и пишу: node c:/server.js
Запускаю браузер и захожу на http://localhost:8080
Да, я вижу Hello World!

Но как же я могу увидеть Hello World! используя хостинг и Nodejs, пройдя по адресу под домена .
Помогите пожалуйста разобраться

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

Ошибка nodejs приложения на хостинге
Здравствуйте, столкнулся с такой вот проблемой, не работает nodejs приложение.

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

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

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

ошибка гласит, что порт уже занят

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

Добавлено через 4 минуты
а ещё нужно настроить проксирование на вашем хостинге.

$ node sj/public_html/server.js
Server running on port 3060[JS]
но ввожу в ьраузер адрес под домена sj.
и ничего нет

Если объяснять просто, то за отображение ( не нода ) отвечает apache или nginx, который автоматически ( при заходе на поддомен ) ( т.е. 80 порт ) пытается запустить php/html файл.. js ( nodejs ) по такому принципу не получиться запустить..
что тут нужно понимать.. в nodejs уже встроен «apache» ( только это не апач, но для понимания пусть будет им ), когда ты говоришь ноду запустить сервер и слушать порт, он по сути делает то же самое что и апач ( которому говоришь слушать порт и вытягивать файлы из такой-то директории ).
НО т.к. на сервере стоит апач и у него уже забиндин порт 80, то нод выдаёт тебе ошибку ( мол порт занят EADDRINUSE ).

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

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

Кстати, если у тебя порт открыт, то ты должен мочь зайти на него по адресу: yourwebsite.zoneort

По материалам www.cyberforum.ru

Если вы используете Node.js как средство серверной разработки для своего сайта или web-приложения, то эта статья для вас, поскольку в ней мы рассмотрим настройку данной программной платформы и правильную организацию структуры папок для корректного функ­цио­ни­ро­ва­ния вашего проекта.

Для начала вам необходимо установить Node.js на свой аккаунт. Скачать любую версию Node.js можно с официального репозитория https://nodejs.org/dist/. На момент написания данного руководства, последним релизом являлась версия v10.6.0, скачать её можно здесь.

Выбирать нужно версию для Linux, битность x64, архиватор GZIP. Скачиваем файл https://nodejs.org/dist/v10.6.0/node-v10.6.0-linux-x64.tar.gz

Для нужной версии вы сможете также установить и необходимые модули (см. ниже).

На хостинге функционирование Node.js реализовано через специальную библиотеку Passenger, которая осуществляет взаимодействие Вашего сайта с обработчиком Node.js

Рассмотрим структуру папок и файлов. Мы предлагаем реализовать ее примерно следующим образом:

Ваша цель — создать идентичную структуру и разместить файлы в соответствующих схеме директориях. Далее мы наполним их содержимым.

Чтобы сразу начать пользоваться необходимой вам версией Node, либо скачайте её с официального сайта и распакуйте через файловый менеджер в панели управления, либо, если вы уже получили доступ по SSH, можете ввести следующие команды в терминале для загрузки и распаковки архива с файлами:

  1. Загружать нужно 64-разрядную версию для Linux
  2. Архив должен иметь расширение .tar.gz, как видно из примера выше

Чтобы Passenger мог взаимодействовать с Node.js, в файле .htaccess (мы рекомендуем располагать его здесь ./site-name.com/htdocs/www/.htaccess) необходимо прописать следующее:

  • Вместо hostXXXXXXX вы прописываете номер своего аккаунта
  • site-name.com — это имя папки с вашим проектом
  • app.js — название файла, который запускает работу серверной части (вы можете назвать его как захотите, главное, пропишите соответствующее имя в .htaccess)
  • PassengerNodejs — путь до исполняемого файла Node.js
  • PassengerFriendlyErrorPages — опция для отображения ошибок, в случае, когда приложение работает не корректно, или не запускается (по умолчанию — PassengerFriendlyErrorPages off). Данная опция выводит сообщения об ошибке, некоторые предложения по решению проблемы, трассировку и дамп переменных среды выполнения. Рекомендуется включать эту опцию только на этапе разработки. После её окончания удалите или закомментируйте в .htaccess эту опцию.

При разработке любого сайта или приложения разработчики допускают ошибки. По умолчанию, они записываются в папку logs, которая находится в корне сайта. Также, убедитесь, что у вас включена данная опция в панели управления. Во вкладке «Домены»→«Прикрепление домена», рядом с надписью «Лог-файлы веб сервера» есть переключатель, который включает/выключает данную опцию. После включения, логи начнут писаться в течение 5 минут (при обычной загруженности сервера).

Файлы restart.txt и always_restart.txt необходимы для того, чтобы при внесении вами каких-либо изменений в рабочие файлы (к примеру, app.js) Passenger, применяя правила записанные в .htaccess, мог перехватывать их и применять в работе сайта. Отличие заключается в том, что restart.txt сработает только один раз, а always_restart.txt перезапускает процесы веб-сервера при каждом поступившем запросе. Рекомендуется использовать always_restart.txt только при разработке. После того, как разработка проекта будет завершена, не забудьте удалить этот файл, чтобы избежать задержек при отображении страницы посетителям.

Если Вы уверены в том, что ваш код работает без багов, но всё-равно видите ошибки на странице, можно принудительно завершить все процессы с помощью следующей команды через SSH-соединение:

После чего перезагрузить страницу.

И напоследок, осталось добавить скрипт для запуска Node в app.js. Ниже представлен код с официального сайта Node.js (в дальнейшем вы можете изменять его по своему усмотрению, сейчас мы лишь хотим убедиться, что всё работает):

Итак, все настройки произведены. Откройте сайт в новой вкладке. Если выводится Hello world, то всё работает, как и ожидалось. В противном случае, ещё раз пройдите по вышеприведённому алгоритму действий. Возможно, вы что то упустили.

Чтобы установить какой-либо модуль в директорию с файлами приложения, при этом используя установленную версию Node.js, необходимо для начала прописать путь до исполняемого файла node в .bash_profile (он лежит в корне вашего аккаунта). После этого вы сможете обращаться к нему из любой директории вашего проекта.

Итак, откройте .bash_profile и допишите следующую строку:

Для примера, рассмотрим подключение модуля mysql для работы с базой данных (предварительно, создайте таблицу под любым названием и поместите туда несколько записей). Чтобы установить даный модуль, зайдите через SSH-соединение в директорию «nodejs_app/www» и введите в терминале команду:

Таким обазом создастся файл package.json с данными о вашем приложении. После этого наберите команду:

Вы увидите, что автоматически создастся новая директория «node_modules» и подгрузятся необходимые нам для работы файлы.

Также, рекомендуем загрузить 2 часто используемых модуля — fs (для работы с файлами) и util (для красивого вывода объектов в консоль)

Далее, открываем файл нашего приложения app.js и добавляем следующий код:

В коде выше мы, с помощью модуля fs, создаём новый файл debug.log, в который будем помещать вывод функции console.log

Далее, переопределяем саму функцию console.log, задействуя поток на запись.

Теперь, при помощи модуля mysql, подключаемся к своей БД и выбираем все записи из нужной нам таблицы, прописывая их в созданный нами файл.

Проверим, всё ли сработало: перезагрузите страницу своего сайта и откройте файл debug.log — вы должны увидеть вывод всех записей из таблицы.

Удачной работы! Если возникнут вопросы — напишите нам, пожалуйста, тикет из панели управления хостингом, раздел «Написать нам».

По материалам www.hostland.ru

Дешевый хостинг
Промо-код для получения скидки: 42b081-10