Как заставить сервер webpack dev работать на порту 80 и на 0.0.0.0, чтобы сделать его общедоступным?


Я новичок во всем мире nodejs / reactjs, поэтому извиняюсь, если мой qs звучит глупо. Поэтому я играю с этим приложением reactjs здесь:https://github.com/bebraw/reactabular

всякий раз, когда я делаю "npm start" он всегда работает на localhost:8080

Как я могу изменить его на 0.0.0.0:8080, чтобы сделать его общедоступным? Я пытался прочитать исходный код в приведенном выше РЕПО, но не смог найти файл, который делает это установочный.

также добавить к этому - как я могу заставить его работать на порту 80, если это вообще возможно?

спасибо.

9 132

9 ответов:

что-то вроде этого работал на меня. Я предполагаю, что это должно работать для вас.

запустите webpack-dev с помощью этого

webpack-dev-server --host 0.0.0.0 --port 80

и в webpack.конфиг.js

entry: [
    'webpack-dev-server/client?http://0.0.0.0:80',
     config.paths.demo
 ]

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

запустите webpack-dev с помощью этого

webpack-dev-server --host 0.0.0.0 --port 80

и в webpack.конфиг.js

entry: [
    'webpack-dev-server/client?http://0.0.0.0:80',
    'webpack/hot/only-dev-server',
     config.paths.demo
 ],

....
plugins:[new webpack.HotModuleReplacementPlugin()]

вот как я это сделал, и это, кажется, работает довольно хорошо.

в вас webpack.конфиг.JS файл добавить следующее:

devServer: {
    inline:true,
    port: 8008
  },

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

настройка webpack (в webpack.конфиг.js) с:

devServer: {
  // ...
  host: '0.0.0.0',
  port: 80,
  // ...
}

Я новичок в разработке JavaScript и ReactJS. Я не смог найти ответ, который работает для меня, пока не выяснил его, просмотрев код react-scripts. Используя ReactJS 15.4.1+ используя react-scripts вы можете начать с пользовательского хоста и / или порта, используя переменные среды:

HOST='0.0.0.0' PORT=8080 npm start

надеюсь, это поможет новичкам вроде меня.

следующие работал для меня -

1) в Package.json добавить это:

"scripts": {
    "dev": "webpack-dev-server --progress --colors"
}

2) в webpack.config.js добавьте это в разделе объект конфигурации, который вы экспортируете:

devServer: {
    host: "GACDTL001SS369k", // Your Computer Name
    port: 8080
}

3) Теперь на тип терминала: npm run dev

4) После того, как #3 компилируется и готов, просто перейдите в свой браузер и введите адрес как http://GACDTL001SS369k:8080/

ваше приложение должно работать теперь с внешним URL-адресом, к которому другие могут получить доступ в той же сети.

PS:GACDTL001SS369k был мое имя компьютера так что замените на то, что у вас на вашей машине.

если вы находитесь в приложении React, созданном с помощью "create-react-app", перейдите к своему package.json, и

"start": "react-scripts start",

для ... (unix)

"start": "PORT=80 react-scripts start",

или ... (win)

"start": "set PORT=3005 && react-scripts start"

следующее работало для меня в файле конфигурации JSON:

"scripts": {
  "start": "webpack-dev-server --host 127.0.0.1 --port 80 ./js/index.js"
},

Я пробовал решения выше, но не повезло. Я заметил эту строку в пакете моего проекта.json:

 "bin": {
"webpack-dev-server": "bin/webpack-dev-server.js"

},

Я посмотрел на bin/webpack-dev-server.js и нашел эту строку:

.describe("port", "The port").default("port", 8080)

Я изменил порт на 3000. Немного грубый подход, но это сработало для меня.

в пакет.JSON, что я нашел

"скрипты": { "начальный узел. /node_modules/webpack-dev-server/bin / webpack-dev-server.js",

проверка содержимого указанного файла конфигурации.

vim ./node_modules/webpack-dev-server/bin / webpack-dev-server.js

.опишите ("порт", "Порт").по умолчанию("порт", 8080) .описать("общественный", "общественные хоста/IP-адрес сервера") .опишите ("хост", " имя хоста / ip-адрес, который сервер будет привязывать к.)"по умолчанию ("host", "localhost");

измените последнюю строку с localhost на 0.0.0.0

.опишите ("хост", "имя хоста/ip-адрес, к которому будет привязан сервер").по умолчанию("хозяин", "0.0.0.0");

Я попробовал изменить порт по умолчанию 8080 на 80, но дал мне это сообщение об ошибке.

R$ npm start

redux-simple-starter@1.0.0 start / home / ubuntu / ReduxSimpleStarter узел ./node_modules/webpack-dev-server/bin / webpack-dev-server.js

событий.js: 183 throw er; / / необработанное событие 'error'

У меня есть серверы ранее не нравится работать на номера портов

на данный момент у меня есть npm запуск сервера и подключение к нему на экземпляре AWS EC2 ubuntu по этому адресу.

http://xx.xx.xx.xx:8080/webpack-dev-server/

но вместо загрузки веб-страницы, я получаю эту ошибку : (

неверный заголовок