localhost отказывается подключаться - ERR_CONNECTION_REFUSED - PullRequest
5 голосов
/ 11 февраля 2020

У меня есть простое MVC веб-приложение, в котором javascript код отправляет ajax запросов контроллеру, а контроллер отправляет обратно ответы.

Я создал приложение 2 года go и все раньше работал нормально. Теперь я попытался снова запустить приложение локально и столкнулся со следующей проблемой: всякий раз, когда запрос от Ajax отправляется из внешнего интерфейса на контроллер (выполняется на локальном хосте), локальный хост отказывается подключаться, и я получаю сообщение ERR_CONNECTION_REFUSED в (chrome s) javascript -консоль. (В консоли javascript Safari появляется следующее сообщение об ошибке: «Не удалось загрузить ресурс: не удается подключиться к серверу.»)

Я запускаю приложение с использованием NetBeans 11.2. Моя среда IDE NetBeans использует GlassFi sh в качестве сервера:

enter image description here

Я удалил сервер Glassfi sh из среды IDE NetBeans, удалил его папку у себя дома и затем снова добавил сервер Glassfi sh в мою среду IDE NetBeans (что также привело к загрузке самой новой версии сервера Glassfi sh).

Тем не менее сервер отказывается принимать любые запросы от внешний интерфейс.

Я также пытался использовать Payara Server (версия 5.193). Это тоже не имело значения.

Между прочим, сам интерфейс выглядит хорошо на первый взгляд. То есть, переход к http://localhost: 8080 / myapp загружает внешний интерфейс приложения. Однако любые динамические c функции приложения не работают, потому что сервер отказывается принимать любые Ajax запросы, поступающие с внешнего интерфейса (и инициируемые с помощью щелчков мыши).

Как это исправить?


Я думаю, что нашел причину проблемы:

В моем javascript -файле у меня есть следующая строка кода:

var url = "http://localhost:8080/myapp/Controller";

переменная "url" передается всем AJAX запросам, отправленным на localhost. Но вот сумасшедшая вещь: AJAX запросы отправляются не на "http://localhost: 8080 / myapp / Controller ", а на "http://localhost: 8081 / myapp / Controller"!!!!!

enter image description here

Что, черт возьми, здесь происходит?!

Ответы [ 2 ]

4 голосов
/ 17 февраля 2020

Использовали ли вы порт 8081 раньше, а затем изменили переменную "url" на новый порт 8080? В этом случае возможно переменная все еще установлена ​​в старое значение в кеше. Перезагрузите компьютер и посмотрите, решит ли это проблему.

1 голос
/ 15 февраля 2020

Если значение атрибута http-listener равно localhost, оно отклонит внешнее соединение.

Вы можете проверить его значение, используя команду

asadmin> get server-config.network-config.network-listeners.network-listener.http-listener-1.*

Информация должно возвращаться аналогично следующему:

server.http-service.http-listener.http-listener-1.acceptor-threads = 1
server.http-service.http-listener.http-listener-1.address = 0.0.0.0
server.http-service.http-listener.http-listener-1.blocking-enabled = false
server.http-service.http-listener.http-listener-1.default-virtual-server = server
server.http-service.http-listener.http-listener-1.enabled = true
server.http-service.http-listener.http-listener-1.external-port =
server.http-service.http-listener.http-listener-1.family = inet
server.http-service.http-listener.http-listener-1.id = http-listener-1
server.http-service.http-listener.http-listener-1.port = 8080
server.http-service.http-listener.http-listener-1.redirect-port =
server.http-service.http-listener.http-listener-1.security-enabled = false
server.http-service.http-listener.http-listener-1.server-name =
server.http-service.http-listener.http-listener-1.xpowered-by = true

Изменить атрибут с помощью подкоманды set.

В этом примере для атрибута address http-listener-1 установлено значение 0.0.0.0:

asadmin> set server.http-service.http-listener.http-listener-1.address = 0.0.0.0

Ссылка:

https://docs.oracle.com/cd/E19798-01/821-1751/ablaq/index.html

...