Millerish
@Millerish

Node.js: как остановить webserver?

Добрый вечер!

Я использую плагин gulp-server-livereload!
var server = require('gulp-server-livereload');
gulp.src(pathDir).pipe(server({
   livereload: true,
   directoryListing: true,
   open: true,
   port: 80
}));


Как мне остановить его работу?

Я пробовал: server.restart(), server.kill(), server.reset()

Но возникают ошибки:
Uncaught Error: watch C:\OpenServer\domains\ipcRenderer\node_modules\electron\dist\resources\electron.asar\browser ENOENT
at exports._errnoException (util.js:1022:11)
at FSWatcher.start (fs.js:1316:19)
at Object.fs.watch (fs.js:1341:11)
at watch (C:\OpenServer\domains\FM\FrontMonkey\node_modules\node-watch\lib\watch.js:221:8)
at C:\OpenServer\domains\FM\FrontMonkey\node_modules\node-watch\lib\watch.js:230:9
at C:\OpenServer\domains\FM\FrontMonkey\node_modules\node-watch\lib\watch.js:41:14
at Array.forEach (native)
at C:\OpenServer\domains\FM\FrontMonkey\node_modules\node-watch\lib\watch.js:38:18
at ReaddirReq.Req.done (C:\OpenServer\domains\FM\FrontMonkey\node_modules\temp-write\node_modules\graceful-fs\graceful-fs.js:143:5)
at ReaddirReq.done (C:\OpenServer\domains\FM\FrontMonkey\node_modules\temp-write\node_modules\graceful-fs\graceful-fs.js:90:22)
at ELECTRON_ASAR.js:568:9
at _combinedTickCallback (internal/process/next_tick.js:67:7)
at process._tickCallback (internal/process/next_tick.js:98:9)

exports._errnoException @ util.js:1022
FSWatcher.start @ fs.js:1316
fs.watch @ fs.js:1341
watch @ C:\OpenServer\domains\FM\FrontMonkey\node_modules\node-watch\lib\watch.js:221
(anonymous) @ C:\OpenServer\domains\FM\FrontMonkey\node_modules\node-watch\lib\watch.js:230
(anonymous) @ C:\OpenServer\domains\FM\FrontMonkey\node_modules\node-watch\lib\watch.js:41
(anonymous) @ C:\OpenServer\domains\FM\FrontMonkey\node_modules\node-watch\lib\watch.js:38
Req.done @ C:\OpenServer\domains\FM\FrontMonkey\node_modules\temp-write\node_modules\graceful-fs\graceful-fs.js:143
ReaddirReq.done @ C:\OpenServer\domains\FM\FrontMonkey\node_modules\temp-write\node_modules\graceful-fs\graceful-fs.js:90
(anonymous) @ ELECTRON_ASAR.js:568
_combinedTickCallback @ internal/process/next_tick.js:67
_tickCallback @ internal/process/next_tick.js:98
fs.js:1318 Uncaught Error: watch C:\OpenServer\domains\FM\FrontMonkey\node_modules\electron\dist\resources\electron.asar\browser ENOENT
at exports._errnoException (util.js:1022:11)
at FSWatcher.start (fs.js:1316:19)
at Object.fs.watch (fs.js:1341:11)
at watch (C:\OpenServer\domains\FM\FrontMonkey\node_modules\node-watch\lib\watch.js:221:8)
at C:\OpenServer\domains\FM\FrontMonkey\node_modules\node-watch\lib\watch.js:230:9
at C:\OpenServer\domains\FM\FrontMonkey\node_modules\node-watch\lib\watch.js:41:14
at Array.forEach (native)
at C:\OpenServer\domains\FM\FrontMonkey\node_modules\node-watch\lib\watch.js:38:18
at ReaddirReq.Req.done (C:\OpenServer\domains\FM\FrontMonkey\node_modules\temp-write\node_modules\graceful-fs\graceful-fs.js:143:5)
at ReaddirReq.done (C:\OpenServer\domains\FM\FrontMonkey\node_modules\temp-write\node_modules\graceful-fs\graceful-fs.js:90:22)
at ELECTRON_ASAR.js:568:9
at _combinedTickCallback (internal/process/next_tick.js:67:7)
at process._tickCallback (internal/process/next_tick.js:98:9)
  • Вопрос задан
  • 1509 просмотров
Решения вопроса 1
@iShatokhin
JS developer
Судя по исходникам, сервер останавливается через event "kill".
Пробуйте:
const stream = server({
   livereload: true,
   directoryListing: true,
   open: true,
   port: 80
});

gulp.src(pathDir).pipe(stream);

stream.emit('kill');
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
@vshvydky
если в доке не найдешь , то process.exit() решит твою проблему наверняка
Ответ написан
@emp1re
ps aux | grep node или index.js (любое названия стартового файла)
kill pid -9
Если в процессах затерся.
А вообще достаточно ctrl+c для выхода из не фонового процесса или команда для процесс менеджеров если к примеру у вас pm2.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы