Назад | Перейти на главную страницу

Tomcat Server не отвечает на порт 80

Я устанавливаю сервер TeamCity, на котором запущен собственный встроенный экземпляр Tomcat на Amazon EC2.

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

Моя группа безопасности настроена так, чтобы разрешить порт 80, и я убедился, что это не проблема.

Я больше ничего не использую на своем экземпляре Linux, только дистрибутив TeamCity, поэтому у меня нет сервера apache или чего-либо еще.

Что мне кажется странным, так это то, что когда я запускаю его на 8111 или 8080, а затем выполняю netstat, я вижу, что эти порты прослушиваются, но когда я устанавливаю порт на 80 и запускаю другой netstat, порт 80 никогда не отображается как прослушиваемый. .

Кто-нибудь знает, почему я не могу заставить tomcat отвечать на порт 80?

В инстансах Amazon EC2 Basic Linux порты 1-1023 являются привилегированными, поэтому, когда я пытался запустить teamcity как пользователь без полномочий root, он вылетал из-за того, что я пытался получить доступ к привилегированному порту.

Я узнал это через этот вопрос о переполнении стека

В нем изложены 2 решения:

  • запустить teamcity как пользователь root
  • запустить teamcity как сервис с jsvc

Вероятно, он уже используется каким-то другим процессом. Ты должен бежать

netstat -anc | grep 80

как root, чтобы узнать, какой процесс имеет сокет LISTEN на этом порту.