Как остановить сервер node js в терминале
Перейти к содержимому

Как остановить сервер node js в терминале

  • автор:

как остановить сервер node js

Чтобы остановить сервер Node.js, необходимо нажать «Ctrl + C» в терминале, в котором запущен сервер. Ниже приведен пример:

[process был прерван] 

Видим, что в терминале появилось сообщение, процесс был прерван. Теперь сервер Node.js остановлен и не будет прослушивать соединения.

Также, есть возможность удаленного управления процессами на Node.js. Одним из таких решений является pm2 process manager.

Как остановить сервер Node.js?

Я только что установил стек MEAN на своем сервере DigitalOcean. Я запустил тестовое приложение нормально, но теперь, когда я открываю командную строку из DigitalOcean, оно показывает информацию: GET /modules/etc. и часть, в которую я ввожу, пустая. Как мне остановить сервер и вернуть его обратно к тому месту, где он был изначально, чтобы я мог получить доступ к папкам и т.д.?

Просто выполнение CTRL+C не останавливает работу сервера, что мне нужно сделать.

Поделиться Источник 28 января 2017 в 22:14

7 ответов

Сначала: CTRL+Z завершит выполнение. Затем, чтобы завершить PID (processID), следуйте следующему.

Общий подход для уничтожения любого processId, включая локальный сервер:

Для этого случая:

$:lsof -i tcp:

Он выведет вас с PID (processId), связанным с портом:

$:kill -9

И снова, вы можете запустить сервер.

Поделиться 17 августа 2019 в 13:56

Вы можете остановить сервер, убив процесс. В Windows запустите CMD и введите taskkill /F /IM node.exe . Это уничтожит (остановит) все процессы Node.js. Затем вы можете перезапустить его.

Поделиться 24 апреля 2019 в 05:43

Чтобы программно убить программу (например, http-server node ) через командную строку или BASH-скрипт.

[victoria@victoria ~]$ pgrep -a node ## pgrep --help 1315229 node /usr/bin/http-server -p 8080 /mnt/Vancouver/ [victoria@victoria ~]$ pgrep -l -f node 1315229 node [victoria@victoria ~]$ pgrep -l -f http-server 1315229 node [victoria@victoria ~]$ pgrep -f http-server 1336598 [victoria@victoria ~]$ a=$(pgrep -f node) ## or: a=$(pgrep -f http-server) [victoria@victoria ~]$ echo $a 1315229 [victoria@victoria ~]$ kill -9 $a [victoria@victoria ~]$ pgrep -a node [victoria@victoria ~]$ ## one-liner: a=$(pgrep -f node); kill -9 $a 

Поделиться 15 марта 2021 в 23:52

CTRL+C следует использовать только при использовании ОС
windows & в коде, использующем:

app.close(); 

если у вас есть такой

let app = require('express'); // or any frameworks 

Поделиться 22 сентября 2021 в 11:42

Ну, вы можете просто остановить это на консоли «Вывод»: Просто щелкните правой кнопкой мыши и выберите опцию «Остановить выполнение кода».

enter image description here

Поделиться 19 июня 2021 в 16:20

Просто откройте диспетчер задач. Найдите процесс node.js в процессах. Затем завершите процесс и попробуйте, чтобы он работал.

Поделиться 26 июля 2020 в 13:53

Что вы используете? Вы попробовали control+c в командной строке или терминале?

Редактирование: перейдите в файл config.js или файл сервера, который вы используете, чтобы указать, какой порт вы хотите использовать. если вы тестируете на localhost, введите localhost:port в браузере

var http = require('http'); var url = require('url'); http.createServer(function (req, res) < console.log("Request: " + req.method + " to " + req.url); res.writeHead(200, "OK"); res.write("

Hello

Node.js is working"); res.end(); >).listen(8080); console.log("Ready on port 8080");

Руководство. Подготовка веб-приложения для Служб коммуникации Azure (Node.js)

Службы коммуникации Azure можно использовать, добавлять в приложения средства коммуникации в реальном времени. В этом руководстве показано, как настроить веб-приложение, которое поддерживает Службы коммуникации Azure. Это вводное руководство для разработчиков, желающих ознакомиться с возможностями коммуникаций в реальном времени.

Завершив работу с этим руководством, вы получите базовое веб-приложение, настроенное с использованием пакетов SDK Служб коммуникации Azure. Затем такое приложение можно будет использовать для создания решения для коммуникации в режиме реального времени.

Вы можете посетить страницу Служб коммуникации Azure на сайте GitHub и оставить там свой отзыв.

В этом руководстве описано следующее:

  • настройка среды разработки;
  • настройка локального веб-сервера;
  • добавление пакетов Служб коммуникации Azure на веб-сайт;
  • публикация веб-сайта на статических веб-сайтах Azure.

Предварительные требования

  • Учетная запись Azure с активной подпиской. Дополнительные сведения см. на странице Создайте бесплатную учетную запись Azure уже сегодня. Бесплатная учетная запись предусматривает предоставление 200 долл. США в качестве денег на счете в Azure, что позволяет испытать в работе любое сочетание служб.
  • Visual Studio Code для редактирования кода в локальной среде разработки.
  • webpack для создания пакета кода и его размещения в локальной среде.
  • Node.js для установки зависимостей и управления ими, например для пакетов SDK и webpack Служб коммуникации Azure.
  • nvm и npm для управления версиями.
  • Расширение службы хранилища Azure для Visual Studio Code. Это расширение требуется для публикации приложения в службе хранилища Azure. Подробнее о размещении статических веб-сайтов в службе хранилища Azure.
  • Расширение Службы приложений Azure. Это расширение позволяет развертывать веб-сайты с дополнительной возможностью настройки полностью управляемой среды непрерывной поставки и непрерывной интеграции (CI/CD).
  • Расширение Функций Azure для создания собственных бессерверных приложений. Например, вы можете разместить в Функциях Azure приложение проверки подлинности.
  • Активный ресурс Служб коммуникации и строка подключения. Практическое руководство по созданию ресурса Служб коммуникации.
  • Маркер доступа пользователя. Инструкции см. в кратком руководстве по созданию маркеров доступа и управлению ими, а также в руководстве по созданию доверенной службы проверки подлинности.

Настройка среды разработки

Локальная среда разработки будет иметь следующую конфигурацию:

Экран

Установка Node.js, а также nvm и npm

Мы будем использовать Node.js, чтобы скачивать и устанавливать зависимости, требуемые для работы приложения на стороне клиента. Мы применим это решение для создания статических файлов, которые затем разместим в Azure, поэтому вам можно не беспокоиться о настройке на стороне сервера.

Разработчики Windows могут воспользоваться этим руководством по Node.js, чтобы настроить Node, nvm и npm.

Это руководство основано на версии LTS 12.20.0. После установки nvm выполните следующую команду PowerShell, чтобы развернуть нужную версию:

nvm list available nvm install 12.20.0 nvm use 12.20.0 

Экран

Настройка Visual Studio Code

Создание рабочей области для проектов Служб коммуникации Azure

Создайте папку для хранения файлов проекта, например: C:\Users\Documents\ACS\CallingApp . В Visual Studio Code выберите Файл>Add Folder to Workspace (Добавить папку в рабочую область), а затем добавьте созданную папку в рабочую область.

Экран

На панели слева откройте обозреватель. Здесь вы увидите созданную папку CallingApp в рабочей области БЕЗ ИМЕНИ.

Экран

Вы можете указать для рабочей области любое имя. Чтобы проверить версию Node.js, щелкните правой кнопкой мыши папку CallingApp и выберите Open in Integrated Terminal (Открыть во встроенном терминале).

Экран

В окне терминала введите следующую команду, чтобы проверить версию Node.js, которую мы установили на предыдущем шаге:

node --version 

Экран

Установка расширений Azure для Visual Studio Code

Установите расширение службы хранилища Azure из Visual Studio Marketplace или прямо в Visual Studio Code (Представление>Расширения>Служба хранилища Azure).

Экран

Выполните эти же действия для расширений Функций Azure и Службы приложений Azure.

Настройка локального веб-сервера

Создание пакета npm

В окне терминала перейдите в папку рабочей области и введите следующую команду:

npm init -y 

Эта команда инициализирует новый пакет npm и добавляет package.json в корневую папку проекта.

Экран

Дополнительную документацию по npm init см. на странице документации по npm для этой команды.

Установка webpack

Вы можете использовать webpack для упаковывания кода в статические файлы, которые можно развернуть в Azure. Это решение включает в себя собственный сервер разработки, который можно настроить для работы с примером вызова.

В терминале введите следующую команду, чтобы установить webpack:

npm install webpack@4.42.0 webpack-cli@3.3.11 webpack-dev-server@3.10.3 --save-dev 

Это руководство протестировано с версиями, указанными в предыдущей команде. Указание -dev сообщает диспетчеру пакетов, что эта зависимость предназначена для разработки и ее не нужно добавлять в код, развертываемый в Azure.

Вы увидите, что в файл package.json в раздел devDependencies добавлены два новых пакета. Эти пакеты будут установлены в каталог ./CallingApp/node_modules/ .

Экран

Настройка сервера разработки

При запуске в браузере статического приложения (например, файла index.html ) используется протокол file:// . Чтобы модули npm работали правильно, нужно использовать протокол HTTP, настроив webpack в качестве локального сервера разработки.

Вы создадите две конфигурации: одну для разработки и одну для рабочей среды. При подготовке для рабочей среды файлы уменьшаются, то есть из них удаляются все неиспользуемые пробелы и символы. Эта конфигурация полезна для рабочих сценариев, в которых нужно обеспечить минимальную задержку или замаскировать код.

Средство webpack-merge следует применить для работы с разными файлами конфигурации для webpack.

Сначала давайте настроим среду разработки. Сначала необходимо установить webpack merge . В терминале выполните приведенную ниже команду.

npm install --save-dev webpack-merge 

Вы увидите, что в файл package.json в раздел devDependencies добавлена еще одна зависимость.

Затем создайте новый файл webpack.common.js и добавьте в него следующий код:

const path = require('path'); module.exports = < entry: './app.js', output: < filename:'app.js', path: path.resolve(__dirname, 'dist'), >> 

Затем следует добавить еще два файла, по одному для каждой конфигурации:

  • webpack.dev.js
  • webpack.prod.js

Теперь измените файл webpack.dev.js , добавив к нему следующий код:

const < merge >= require('webpack-merge'); const common = require('./webpack.common.js'); module.exports = merge(common, < mode: 'development', devtool: 'inline-source-map', >); 

В этой конфигурации общие параметры импортируются из webpack.common.js , затем два файла объединяются, устанавливается режим development и sourcemap определяется как inline-source-map .

Режим разработки означает, что webpack не будет минифицировать файлы и создавать оптимизированные рабочие файлы. Подробную документацию по режимам webpack можно найти на веб-странице webpack «Режим».

Параметры sourcemap перечислены на веб-странице webpack Devtool. Настройка SourceMap упрощает отладку в браузере.

Экран

Чтобы запустить сервер разработки, перейдите к package.json и добавьте следующий код в раздел scripts :

 "build:dev": "webpack-dev-server --config webpack.dev.js" 

Теперь этот файл будет выглядеть так:

< "name": "CallingApp", "version": "1.0.0", "description": "", "main": "index.js", "scripts": < "test": "echo \"Error: no test specified\" && exit 1", "build:dev": "webpack-dev-server --config webpack.dev.js" >, "keywords": [], "author": "", "license": "ISC", "devDependencies": < "webpack": "^4.42.0", "webpack-cli": "^3.3.11", "webpack-dev-server": "^3.10.3" >> 

Вы добавили команду, которую можно использовать из npm.

Экран

Тестирование сервера разработки

Создайте в Visual Studio Code три файла в папке проекта:

  • index.html
  • app.js
  • app.css (необязательно, для задания стиля приложения)

Вставьте этот код в index.html :

     My first Azure Communication Services application   

Hello from Azure Communication Services!

Экран

Добавьте в app.js следующий код:

alert('Hello world alert!'); console.log('Hello world console!'); 

Добавьте в app.css следующий код:

html

Не забудьте сохранить! Несохраненный файл будет обозначен белой точкой рядом с именем файла в Explorer.

Экран

Открыв эту страницу, вы увидите сообщение с оповещением в консоли браузера.

Экран

Выполните в терминале следующую команду, чтобы протестировать конфигурацию разработки:

npm run build:dev 

Консоль отобразит сообщение о том, какой у работающего сервера адрес. По умолчанию это http://localhost:8080 . Команда build:dev — это команда, добавленная package.json ранее.

Экран

Перейдите в браузере по адресу сервера и убедитесь, что открываются ранее настроенные страница и оповещение.

Экран

Пока сервер работает, вы можете внести любые изменения в код и сервер. HTML-страница автоматически перезагрузится.

Затем перейдите к файлу app.js в Visual Studio Code и удалите alert(‘Hello world alert!’); . Сохраните этот файл и убедитесь, что оповещение исчезнет из браузера.

Чтобы остановить сервер, выполните Ctrl+C в терминале. Чтобы запустить сервер в любое время, введите npm run build:dev .

Добавление пакетов Служб коммуникации Azure

Используйте команду npm install , чтобы установить пакет SDK Служб коммуникации Azure для реализации вызовов на JavaScript.

npm install @azure/communication-common --save npm install @azure/communication-calling --save 

Это действие добавляет общие пакеты и пакеты вызовов Служб коммуникации Azure в качестве зависимостей пакета. Вы увидите,что в файл package.json добавлены два новых пакета. Дополнительные сведения о npm install см. на странице документации по npm для этой команды

Экран

Эти пакеты предоставляются командой разработчиков Служб коммуникации Azure и содержат библиотеки проверки подлинности и вызова. Команда —save сообщает, что приложение зависит от этих пакетов в рабочей среде, а значит их нужно включить в devDependencies файла package.json . Теперь при сборке приложения для рабочей среды указанные пакеты будут добавлены в рабочий код.

Публикация веб-сайта на статических веб-сайтах Azure

Создание конфигурации для развертывания в рабочей среде

Добавьте в webpack.prod.js следующий код:

const < merge >= require('webpack-merge'); const common = require('./webpack.common.js'); module.exports = merge(common, < mode: 'production', >); 

Эта конфигурация будет объединена с webpack.common.js (где вы указали входной файл и где сохраняются результаты). В конфигурации также будет задан режим production .

В классе package.json добавьте следующий код.

"build:prod": "webpack --config webpack.prod.js" 

Файл должен выглядеть следующим образом.

< "name": "CallingApp", "version": "1.0.0", "description": "", "main": "index.js", "scripts": < "test": "echo \"Error: no test specified\" && exit 1", "build:dev": "webpack-dev-server --config webpack.dev.js", "build:prod": "webpack --config webpack.prod.js" >, "keywords": [], "author": "", "license": "ISC", "dependencies": < "@azure/communication-calling": "^1.0.0-beta.6", "@azure/communication-common": "^1.0.0" >, "devDependencies": < "webpack": "^4.42.0", "webpack-cli": "^3.3.11", "webpack-dev-server": "^3.10.3", "webpack-merge": "^5.7.3" >> 

Экран

В окне терминала выполните следующую команду:

npm run build:prod 

Эта команда создает папку dist с готовым к работе статическим файлом app.js .

Экран

Развертывание приложения в службе хранилища Azure

Скопируйте index.html и app.css в папку dist .

В папке dist создайте файл с именем 404.html . Скопируйте в этот файл следующий код разметки:

      Document  

The page does not exists.

Сохраните файл (CONTROL + S).

Щелкните папку dist правой кнопкой мыши и выберите вариант Deploy to Static Website via Azure Storage (Развертывание на статическом веб-сайте через службу хранилища Azure).

Экран

В разделе Выбор подписки выберите Войти в Azure (или Создать бесплатную учетную запись Azure, если вы еще не создали подписку).

Экран

Выберите Создать новую учетную запись хранения>Дополнительно.

Экран

Укажите имя группы для хранилища:

Экран

Если нужно, создайте группу ресурсов:

Экран

Для параметра Would you like to enable static website hosting? (Включить размещение статических веб-сайтов) выберите вариант Да.

Экран

В поле Enter the index document name (Введите имя документа индекса) примите имя файла по умолчанию. Вы уже создали файл index.html .

В поле Enter the 404 error document path (Введите путь к документу с сообщением об ошибке 404) введите 404.html.

Выберите расположение приложения. Это расположение определяет, какой обработчик мультимедиа будет в будущем использоваться вызывающим приложением при групповых вызовах.

Службы коммуникации Azure выбирают обработчик мультимедиа в зависимости от расположения приложения.

Экран

Дождитесь, пока завершится создание ресурса и веб-сайта.

Выберите Browse to website (Перейти к веб-сайту).

Экран

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

Экран

Перейдите на портал Azure, выберите созданные группу ресурсов и приложение. Затем выберите Параметры>Статический веб-сайт. Вы увидите, что статические веб-сайты включены. Обратите внимание на основную конечную точку, имя документа индекса, а также путь к документу с сообщением об ошибке.

Экран

Выберите элемент Контейнеры в разделе Служба BLOB-объектов. В списке показаны два созданных контейнера: один для журналов ( $logs ) и один для содержимого вашего веб-сайта ( $web ).

Экран

Если вы откроете контейнер $web , то увидите файлы, которые были ранее созданы в Visual Studio и развернуты в Azure.

Экран

Приложение можно в любой момент повторно развернуть из Visual Studio Code.

Теперь вы готовы к созданию первого веб-приложения Служб коммуникации Azure.

Дальнейшие действия

Кроме того, вам может понадобиться следующее:

  • Добавление чата в приложение
  • Создание маркеров доступа пользователей
  • Сведения об архитектуре клиент-сервер
  • Сведения о проверке подлинности

Как остановить сервер в NodeJs?

Здравствуйте!
Я подключился к серверу через SSH. и работаю в консоль PuTTY
Запустил вебсокет сервер..все норм но как её теперь остановить? когда нажимаю на CTRL+C просто закрывает консоль. а теперь как остановить сервер?(и перезагрузить)

  • Вопрос задан более трёх лет назад
  • 5141 просмотр

5 комментариев

Простой 5 комментариев

hahenty

killall node

dilikpulatov

Дилик Пулатов @dilikpulatov Автор вопроса
Сергей Сергей, прям так написать в консоль?

Krasnodar_etc

Егор Живагин @Krasnodar_etc

Тебе нужно процесс, запущенный из-под Node.js перезапустить? Или вообще весь сервер, к которому ты подключился?

hahenty

в консоли так и надо, в консоли не найдешь нужной кнопочки, можно добавить sudo впереди, зависит от версии системы.

dilikpulatov

Дилик Пулатов @dilikpulatov Автор вопроса
Егор Живагин, нужно перезапустить один из сервер
Решения вопроса 0
Ответы на вопрос 1

Xuxicheta

это зависит от того, как вы его запускали. Что такое «вебсокет сервер»?
Если просто node server.js
то проще всего killall node или kill _pid_процесса_

Ответ написан более трёх лет назад

dilikpulatov

Дилик Пулатов @dilikpulatov Автор вопроса

killall node и kill _pid_процесса_ не работает. пишет что такое команда нету
я подключился к сервер через PuTTY
там установлено Виндовс
просто залил свой проект(ведсокет на ноде) и запускал через команду node index.js и все.
нод сервер работает но теперь не могу её остановить.
PuTTY когда нажимаю CTRL+C просто закрывается консоль
и ещё пробовал команду
pkill —signal SIGINT node-chat
node-chat — здесь process.title = ‘node-chat’; в начале файл index.js то есть ID

Xuxicheta

Дилик Пулатов,
pkill тоже подойдет
да, killall может быть не установлен. Это в общем тоже самое, только убивает все подходящие под паттерн процессы

pkill «node-chat» должен сработать, если действительно задан process.title

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *