Tomcat запускается, но домашняя страница не открывается с URL-адресом http://localhost: 8080
Я новичок в Java, и я пытаюсь разработать веб-приложение.
У меня Windows 7 32 бит. Я установил Java 7 и установил путь и путь к классам. После этого я установил Tomcat 7.
Когда я пытаюсь открыть домашнюю страницу tomcat с помощью URL localhost:8080
, он не открывается, и Tomcat останавливается автоматически.
Пожалуйста, помогите мне.
Ответы
Ответ 1
Убедитесь, что никакое другое приложение не использует порт 8080 перед запуском tomcat. Если это не проблема, пожалуйста, вставьте журнал Tomcat.
Если вы хотите изменить порт по умолчанию для tomcat, перейдите в папку tomcat и откройте папку conf
, в которой вы можете увидеть server.xml
. В этом файле вы можете увидеть что-то вроде <Connector port=
. Измените значение порта и запустите tomcat.
Ответ 2
Если вы запустили tomcat через eclipse, его также можно решить по-разному.
Способ 1:
- Щелкните правой кнопкой мыши на сервере → Свойства
- нажмите на местоположение переключателя и примените.
![введите описание изображения здесь]()
Method2:
- Дважды щелкните на сервере в eclipse.
- Измените расположение сервера на использование установки tomcat (возьмите управление установкой tomcat).
Ответ 3
Ваша проблема не с портом 8080
, а с портом 8005
. Порт 8005
- это порт выключения для Tomcat.
Вместо того, чтобы пытаться выяснить, что использует порт 8005
, проще отредактировать TOMCAT_DIR/conf/server.xml
и изменить порт выключения на 8006
<Server port="8006" shutdown="SHUTDOWN">
Ответ 4
Для систем на базе Unix вы можете проверять порты, используемые конкретным приложением, вызывая следующую команду в терминале
[~/.]$ netstat -tuplen
Вы получите список всех портов, которые в настоящее время хранятся и используются их соответствующими идентификаторами процесса
Ответ 5
Для пользователей Windows введите netstat -an
в командной строке, чтобы увидеть прослушиваемые порты. Это может пригодиться.
Ответ 6
Моя проблема решена. Я получил журнал, как показано ниже.
SEVERE: StandardServer.await: создать [localhost: 8005]:
java.net.BindException: Невозможно назначить запрошенный адрес: JVM_Bind
Мой сервер tomcat автоматически останавливался, когда я пытался открыть домашнюю страницу tomcat с помощью
URL.
Итак, я только что внесли некоторые изменения в файл Windows- > System32- > drivers- > etc- > host.
сохранить только 127.0.0.1 localhost и удалить все остальные. ваша проблема будет решена.
Спасибо, ребята, за вашу помощь: D
Ответ 7
Если у вас есть ваш tomcat (в linux check с ps -ef | grep java
), и вы увидите, что он открыл порт 8080 или тот, который вы настроили в server.xml(проверьте с помощью netstat --tcp -na | grep <port number>
), но вы по-прежнему не можете получить доступ к нему в своем браузер проверьте следующее:
- Это может начаться, но с задержкой 3-5 минут. Проверьте
logs/catalina.out
. Вы должны увидеть что-то подобное, когда сервер запустится полностью.
INFO [main] org.apache.catalina.startup.Catalina.start Server startup in 38442 ms
Если у вас нет этой строки INFO, ваш запуск сервера еще не завершен. Проблема может возникнуть из-за класса SecureRandom
, ответственного за предоставление случайных идентификаторов сеанса и которые могут вызвать большие задержки во время запуска.
Проверьте более подробную информацию и решение здесь.
- Проверьте свой брандмауэр (на linux
iptables -L -n
): вы можете полностью reset полностью использовать брандмауэр iptables -F
, если вы не находитесь в открытой среде. Однако обратите внимание, что это оставляет вас без защиты, поэтому это может быть опасно.
- Проверьте
selinux
(если вы используете linux).
Вот некоторые из самых забытых и не очевидных проблем, связанных с запуском и запуском вашего Apache Tomcat.
Ответ 8
Для пользователей Mac
Сначала попробуйте: перейдите к монитору активности → найдите java и запустите экземпляр, затем перезапустите сервер и попробуйте.
Вторая попытка:
Проверьте файл журнала на наличие ошибок в папке журналов tomcat.
Используйте команду ниже для проверки журналов tomcat в терминале
tail -f {tomcatpath}/logs/catalina.out
Третий пример:
Проверьте, есть ли node или другие приложения, использующие один и тот же порт. Используйте команду ниже, чтобы проверить, какое приложение прослушивает определенный порт. Вы увидите список приложений с pid во втором столбце.
lsof -i :8080 | grep LISTEN
Убейте процесс, используя следующую команду
sudo kill -9 pid
Ответ 9
Я использую Eclipse Java EE IDE for Web Developers. Version: Oxygen.1a Release (4.7.1a) in Windows 8.1 x64
с Apache Tomcat 8.5.24
(для целей тестирования).
Имя порта и номера для моего Tomcat Server:
Tomcat admin port : 8005
HTTP/1.1 : 8081 (my Tomcat Listening Port Number)
AJP/1.3 : 8009
Народы, для тех, кого Tomcat работали хорошо раньше, и sometimes
внезапно после stopping tomcat server
явно, нажав кнопку ниже показанного изображения или могут быть другими причинами.
![Остановить Tomcat Server через кнопку Eclipse Standard Toolbar явно]()
Either
они постоянно не смогли start/restart
tomcat с указанной ниже ошибкой:
Сервер Tomcat vX.Y Сервер на локальном хосте не запускался.
or
иногда Tomcat Server is started
, но вместо того, чтобы показывать Tomcat Homepage
в веб-браузере, он бросает исключение клиента HTTP Status 404 – Not Found.
в предпочтительном веб-браузере.
возможно, существует много причин, то есть неправильный Host name
определенный, неправильный Tomcat Server Locations
, определенный в eclipse, несоответствие версии JDK/JRE
проекта Tomcat JRE dependent version
, несоответствие версии проекта maven из-за maven.compiler.source
и maven.compiler.target
версии не определено в теге свойств, несовпадающая версия факела проекта Динамический веб-модуль до 2.5/3.0, иногда Tomcat Server работает на уровне служб Windows, предыдущий остановленный номер порта Tomcat по-прежнему прослушивание и processing pid
не были убиты в Tomcat, определенные временные рамки Timeouts Stop (in seconds): 15(by default)
в eclipse и pid
все еще запущены, не удалось запустить в определенных Start (in seconds): XX
и т.д.
Здесь я дам резолюцию о том, как проверить и убить текущий существующий номер порта Tomcat processing pid
(будьте осторожны, вы должны знать о последствиях).
В Windows откройте командную строку и выполните шаги (мой HTTP-порт tomcat равен 8081):
netstat -ano | findstr :8081
TCP 0.0.0.0:8081 0.0.0.0:0 LISTENING 2284
TCP [::]:8081 [::]:0 LISTENING 2284
если какое-либо прослушивание находится там, команда выше будет перечислять детали прослушивания порта вместе с processing pid
в конце строки (здесь pid - 2284).
теперь убейте запущенный pid как:
taskkill /PID 2284 /F
SUCCESS: The process with PID 2284 has been terminated.
также показаны следующие два шага, как показано ниже:
![Killing running PID]()
Теперь, после устранения вышеописанной причины, запустите Tomcat Server
.
Ответ 10
Я была такая же проблема. Мой tomcat был запущен, но я получал страницу HTTP 404, не найденную. Однако в моей ситуации я установил экземпляры дерева tomcat. Каждый экземпляр содержит папки conf, temp, work, webapps и logs. Если я не забыл, скопировать глобальный web.xml в папке conf каждого кота.
e.g: /opt/tomcat/mytomcatInstance/conf/web.xml
Файл дескриптора развертывания web.xml описывает, как развернуть веб-приложение в контейнере сервлета.
Поэтому, даже если мой кот был запущен, мои веб-приложения не могли быть развернуты должным образом.
Ответ 11
Проблемы могут возникнуть из-за проблемы с памятью. java.lang.OutOfMemoryError: пространство кучи Java
пожалуйста, проверьте файл журнала, любые проблемы, связанные с оборудованием (память).
Ответ 12
Посмотрите в TomcatDirectory/logs/catalina.out для журналов. Если журналы слишком длинные, удалите файл catalina.out и перезапустите приложение.
Ответ 13
1) Используя терминал (в Linux), перейдите в папку apache-tomcat-directory/bin.
2) Тип ./catalina.sh start
3) Чтобы остановить Tomcat, введите ./catalina.sh stop
из папки bin. По какой-то причине ./startup.sh
иногда не работает.
Ответ 14
Если вы используете eclipse для запуска сервера, проверьте местоположение сервера и путь развертывания:
![tomcat server location and deploy path]()
В моем случае изменение этого параметра на Tomcat installation
вместо workspace metadata
сработало для меня.