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

Я пытаюсь настроить файл Tomcat server.xml для работы через порт TCP 8080. Но это всегда терпит неудачу, потому что порт 8080 используется. Я попытался запустить netstat -ano чтобы выяснить, что использует порт 8080, и в то время это был Firefox (да, меня это тоже смущает). Когда я сделал это http://localhost , я получил 404, тогда как при выполнении http://localhost:8080/ адрес работал нормально. Проблема становится очевидной, когда я нажимаю кнопку выхода из моего примера веб-приложения, и он ищет localhost/?logout . Я могу заставить ссылку найти localhost:8080/?logout , но это не совсем правильное решение.

Кто-нибудь знает решение этой проблемы?

2 ответа2

2

Запустите монитор ресурсов (если вы находитесь в Windows. Так как вы не указали свою ОС), нажав клавишу Windows, а затем напечатав resmon .
Затем на вкладке Network вы можете увидеть Listening ports а затем проверить, какая программа использует порт 80. Тогда позаботься об этом.

Если вы используете Linux, введите это в командной строке:

sudo netstat -tapen | grep ":80 "
1

После некоторых исследований я понял, что является причиной проблемы.

Когда я запустил Tomcat, служба пыталась привязать порт 8080 к своим разъемам (используя конфиги файла service.xml ). Но службы отчетов SQL Server - это приложение, с которым я не был знаком. По-видимому, службы отчетов MSSQLSERVER по умолчанию используют порт 8080 и, если он уже установлен как служба, будут делать это, если вы не отключите его.

Как только я отключил сервис, мое веб-приложение работало отлично. Это также причина, по которой привязка к 8055 работала временно (но это все равно не было логичным решением).

Спасибо @TechLife за его ответы :)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .