Это работает. Люди Linux, по крайней мере, у меня работает с Ubuntu 14.04.2 LTS.
Родриго Гургель
3
Автосвязка - правильный ответ. Но обратите внимание, что вы можете пропустить автосвязку, если вы используете sudo startup.sh, поскольку порт 80 будет предоставлен расширенному пользователю.
Марсио Ясински
1
Спасибо!! Я знал о включении authbind в конфигурации сервера, но не знал, что мне нужно было создать файл в authbind для зарегистрированного порта! Я бы хотел, чтобы ОП изменило принятое решение на этот ответ! (Я вижу, что вы почти на 3 года опоздали с ответом: P)
Fr0zenFyr
1
Работает с Tomcat 9 на Lubuntu 18.0.4, без установки authbind, только добавляя настройки.
Марко Сулла
107
В Linux на основе Debian (включая Ubuntu) вам также нужно перейти /etc/default/tomcat7, раскомментировать #AUTHBIND=noстроку и установить для нее значение «да», чтобы позволить серверу связываться с привилегированным портом.
Не работает для Tomcat (если установлен zip / tar.gz) в 13.10.
Горкаморка
4
Чтобы заставить его работать с zip / tar.gz, выполните шаги 1 и 2 выше, добавьте AUTHBIND = yes в bin / setenv.sh (создайте, если его там нет) и начните с root. Работает с LTS 12.04, также должен работать с 13.10.
Карл
В моем случае это не удалось (без сообщения об ошибке в catalina.out) без пакета authbind, сработало после его установки
golimar
Не могли бы вы указать на документацию об AUTHBIND = да? Я нахожу это нигде.
ARX
Я не могу найти упоминания о настройке AUTHBIND как части конфигурации серверного элемента в документации TOMCAT. Странный.
Питер Н. Штайнмец
22
Я попытался изменить порт с 8080на 80в, server.xmlно у меня не получилось. Затем я нашел альтернативу, обновите, iptablesчто, я уверен, влияет на производительность.
Выполните следующую команду для удаления маршрутизации: iptables -t nat -D PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080
casol
17
Поскольку предыдущие ответы не работали (это было хорошо, но недостаточно) для меня на сервере Ubuntu 14.04, я упоминаю эти рекомендации (это цитата).
Отредактируйте: обратите внимание, что, как @ jason-faust упомянул об этом в комментариях, 14.04 authbindпакет, который поставляется с ним, теперь поддерживает IPv6, поэтому предпочитаемое IPv4 больше не нужно .
1) Install authbind
2) Make port 80 available to authbind (you need to be root):
touch /etc/authbind/byport/80
chmod 500 /etc/authbind/byport/80
chown tomcat7 /etc/authbind/byport/80
3) Make IPv4 the default (authbind does not currently support IPv6).
To do so, create the file TOMCAT/bin/setenv.sh with the following content:
CATALINA_OPTS="-Djava.net.preferIPv4Stack=true"
4) Change /usr/share/tomcat7/bin/startup.sh
exec authbind --deep "$PRGDIR"/"$EXECUTABLE" start "$@"
# OLD: exec "$PRGDIR"/"$EXECUTABLE" start "$@"
Если у вас уже есть setenv.shфайл /usr/share/tomcat7/binс CATALINA_OPTS, вы должны использовать:
Я хотел бы добавить, что файл startup.sh находится по адресу: /usr/share/tomcat7/bin/startup.sh - Это не совсем очевидно для нас, новичков;)
ConMan
@ConMan обновил пути, это отличная идея для сохранения других поисков. Я признаю, что знание этого места не очевидно в начале.
Smonff
1
Спасибо, это сработало отлично, я привык к centos, так что это было полезно для меня, где это не было проблемой для меня.
med116
1
Я только что выполнил это сегодня, 14 апреля, пакет authbind, который поставляется вместе с ним, теперь поддерживает IPv6, поэтому предпочитаемый IPv4 больше не нужен.
Джейсон Фауст
Я также сделал: chmod 755 /usr/share/tomcat7/bin/setenv.sh
Кейси Харрильс
5
На современном linux лучший подход (для меня) - использовать xinetd:
1) создать /etc/xinet.d/tomcat-http
service http
{
disable = no
socket_type = stream
user = root
wait = no
redirect = 127.0.0.1 8080
}
2) создать /etc/xinet.d/tomcat-https
service https
{
disable = no
socket_type = stream
user = root
wait = no
redirect = 127.0.0.1 8443
}
Другой подход состоит в том, чтобы скомпилировать и использовать jsvc, но xinetd определенно проще
cgdave
5
Если кто-то ищет, как изменить номер порта tomcat в Eclipse IDE пользователя, выполните следующие действия.
1. В представлении «Серверы» дважды щелкните имя сервера:
2. Откроется страница конфигурации Tomcat следующим образом:
3. Обратите внимание, что номера портов указаны в таблице справа. Нажмите, чтобы редактировать, например:
4. Это изменит номер порта для HTTP с 8080 на 80. Нажмите Ctrl + S, чтобы сохранить изменения и перезапустить сервер. Мы можем определить изменение номера порта в представлении консоли:
Если вы используете eclipse, и изменение server.xml не работает для вас, попробуйте следующую статью ... у них есть шаги для изменения порта, если вы используете IDE, как eclipse.
Ответы:
1) Перейти в
conf
папку в директории установки tomcat2) Редактировать следующий тег в
server.xml
файле3) Измените
port=8080
значение наport=80
4) Сохранить файл.
5) Остановите свой Tomcat и перезапустите его.
источник
etc/default/tomcat7
набореAUTHBIND=yes
, чтобы избежать ошибки PermissionDenied для порта 80.Ubuntu 14.04 LTS, в Amazon EC2. Следующие шаги решили эту проблему для меня:
1. Отредактируйте server.xml и измените port = "8080" на "80"
2. Отредактируйте файл tomcat7 (если файл не создан, вам нужно его создать)
раскомментируйте и измените # AUTHBIND = нет на да
3. Установите authbind
4. Выполните следующие команды, чтобы обеспечить чтение + выполнение tomcat7 на порте 80.
5. Перезагрузите кота:
источник
authbind
, только добавляя настройки.В Linux на основе Debian (включая Ubuntu) вам также нужно перейти
/etc/default/tomcat7
, раскомментировать#AUTHBIND=no
строку и установить для нее значение «да», чтобы позволить серверу связываться с привилегированным портом.источник
В системах Ubuntu и Debian необходимо выполнить несколько шагов:
В server.xml измените строку
<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>
наport="80"
.Установите рекомендуемый (не обязательный) пакет authbind с помощью следующей команды:
sudo apt-get install authbind
Включите authbind в файле server.xml (в любом из
/etc/tomcat6
или/etc/tomcat7
), раскомментировав и установив строку следующим образом:AUTHBIND=yes
Все три шага необходимы.
источник
Я попытался изменить порт с
8080
на80
в,server.xml
но у меня не получилось. Затем я нашел альтернативу, обновите,iptables
что, я уверен, влияет на производительность.Я использую следующие команды:
http://www.excelsior-usa.com/articles/tomcat-amazon-ec2-advanced.html#port80
источник
Поскольку предыдущие ответы не работали (это было хорошо, но недостаточно) для меня на сервере Ubuntu 14.04, я упоминаю эти рекомендации (это цитата).
Отредактируйте: обратите внимание, что, как @ jason-faust упомянул об этом в комментариях, 14.04
authbind
пакет, который поставляется с ним, теперь поддерживает IPv6, поэтому предпочитаемое IPv4 больше не нужно .Если у вас уже есть
setenv.sh
файл/usr/share/tomcat7/bin
сCATALINA_OPTS
, вы должны использовать:Теперь вы можете изменить порт,
80
как сказано в других ответах.источник
На современном linux лучший подход (для меня) - использовать xinetd:
1) создать /etc/xinet.d/tomcat-http
2) создать /etc/xinet.d/tomcat-https
3) chkconfig xinetd включен
4) /etc/init.d/xinetd start
источник
Если кто-то ищет, как изменить номер порта tomcat в Eclipse IDE пользователя, выполните следующие действия.
1. В представлении «Серверы» дважды щелкните имя сервера:
2. Откроется страница конфигурации Tomcat следующим образом:
3. Обратите внимание, что номера портов указаны в таблице справа. Нажмите, чтобы редактировать, например:
4. Это изменит номер порта для HTTP с 8080 на 80. Нажмите Ctrl + S, чтобы сохранить изменения и перезапустить сервер. Мы можем определить изменение номера порта в представлении консоли:
Это все содержание взято из ссылки ниже, пожалуйста, обратитесь к этой ссылке для получения дополнительной информации спасибо. http://www.codejava.net/servers/tomcat/how-to-change-port-numbers-for-tomcat-in-eclipse
источник
Запуск команды ниже работал с. Попробовал изменить
server.xml
и файл conf, но оба не работали.источник
На сервере Linux вы можете просто использовать эти команды для перенастройки Tomcat для прослушивания порта 80:
источник
Если вы используете eclipse, и изменение server.xml не работает для вас, попробуйте следующую статью ... у них есть шаги для изменения порта, если вы используете IDE, как eclipse.
источник
Просто зайдите в папку с конфетами Tomcat
откройте файл server.xml
Перейти к одному из соединительных узлов, которые выглядят следующим образом
Просто поменяй порт
сохранить и перезапустить Tomcat
источник
Вот шаги:
-> Следуйте по пути: {каталог tomcat> / conf -> Найдите эту строку:
измените номер порта с "8080" на "80".
-> Сохранить файл.
-> Перезагрузите сервер :)
источник
Не забудьте отредактировать файл. Откройте файл
/etc/default/tomcat7
и изменитев
затем перезагрузите.
источник