Получение ERR_CONNECTION_RESET с сервером разработки Webpack на порту 8080 - PullRequest
0 голосов
/ 22 октября 2019

Я следую официальному учебнику webpack по настройке сервера webpack. Вот мой конфиг веб-пакета:

const path = require('path');
const HtmlWebpackPlugin = require('html-webpack-plugin');
const { CleanWebpackPlugin } = require('clean-webpack-plugin');

module.exports = {
  mode: 'development',
  entry: {
    app: './src/index.js',
    print: './src/print.js',
  },
  devtool: 'inline-source-map',
  devServer: {
    contentBase: './dist',
    // port: 8081 // <-- uncommenting this line gets rid of the error
  },
  plugins: [
    new CleanWebpackPlugin(),
    new HtmlWebpackPlugin({
      title: 'Output Management',
    })
  ],
  output: {
    filename: '[name].bundle.js',
    path: path.resolve(__dirname, 'dist'),
  },
}

Однако, когда я пытаюсь запустить сервер, я получаю странную проблему. Код компилируется должным образом в соответствии с выводом веб-пакета, но когда URL пытается открыть в Chrome / Safari, я получаю «Этот сайт не может быть достигнут» с ERR_CONNECTION_RESET. В приведенной выше конфигурации, когда я раскомментирую строку 8081, все работает как положено (за исключением того, что сервер теперь находится на порте 8081).

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

var http = require('http');

http.createServer(function (req, res) {
  res.write('Hello World!');
  res.end();
}).listen(8080);

и увидеть ожидаемый Hello World на порту8080.

Почему сервер разработки веб-пакетов не может работать на порте 8080?

Если это имеет значение, я работаю на OSX 10.15 Catalina с Node.js v12.13.0.

1 Ответ

0 голосов
/ 23 октября 2019

Использование той же конфигурации работает для меня. Попробуйте проверить состояние порта (возможно, что-то конфликтует только с веб-пакетом) с помощью:

lsof -i :8080

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

kill -15 <PID>

ПД. (Это будет комментарий, но я пока не могу добавлять комментарии).

...