Изменение порта Tomcat HTTP на 80

Изменение порта Tomcat HTTP на 80

1. обзор

По умолчанию Apache Tomcat работает на порту8080. В некоторых случаях этот порт уже может быть занят другим процессом, или в требованиях может быть указано, что мы должны использовать другой порт.

В этой быстрой статье мы покажем, как изменить HTTP-порт сервера Apache Tomcat. В наших примерах мы будем использовать порт80, хотя процесс одинаков для любого порта.

2. Конфигурация Apache Tomcat

Первым шагом в этом процессе является изменение конфигурации Apache Tomcat.

Сначала мы находим файл<TOMCAT_HOME>/conf/server.xml на нашем сервере. Затем мы находим строку, которая настраивает порт коннектора HTTP:

И меняем порт на80:

3. Изменения в системе Linux и Unix

В системах Linux и Unixport numbers below 1024 are privileged ports and are reserved for programs running as root. Если мы работаем на порту1024 или выше, то мы можем пропустить оставшуюся часть этого раздела и перейти непосредственно к запуску / перезапуску нашего сервера, как описано в разделе 4.

If we have root or sudo access, мы можем просто запустить процесс Tomcat как root, используя команду:

sudo startup.sh

But if we do not have root or sudo access, нам нужно будет установить и настроитьauthbind, как описано ниже.

Note: when using a non-privileged port (1024 или выше), мы можем пропустить оставшуюся часть этого раздела и перейти непосредственно к запуску / перезапуску нашего сервера.

3.1. Установить пакетauthbind

For Linux-based systems: загрузите и установите пакетauthbind:

sudo apt-get install authbind

СначалаFor MacOS systems:, загрузитеauthbind для MacOS изhere и разверните пакет. Затем перейдите в расширенный каталог для сборки и установки:

$ cd MacOSX-authbind
$ make
$ sudo make install

3.2. Включитьauthbind в Apache Tomcat

Откройте файл<TOMCAT_HOME>/conf/server.xml и раскомментируйте следующую строку:

AUTHBIND=yes

3.3. Включить чтение и выполнение для порта

Теперь нам нужно выполнить несколько команд, чтобы разрешить чтение и выполнение для порта.

Вот пример использования Tomcat версии 8.x:

sudo touch /byport/80
sudo chmod 500 /byport/80
sudo chown tomcat8 /byport/80

Примечание: если используется Tomcat версии 6 или 7, то в последней команде мы будем использоватьtomcat6 илиtomcat7 соответственно вместоtomcat8.

3.4. Использование более старых версийauthbind

Если вы используете более старыйauthbind (version lower than 2.0.0), который не поддерживает IPv6, нам нужно будет сделать IPv4 значением по умолчанию.

Если у нас уже есть файл<TOMCAT_HOME>/bin/setenv.sh, замените:

exec «$ PRGDIR» / «$ EXECUTABLE» start «[email protected

с этой строкой:

exec authbind --deep "$PRGDIR"/"$EXECUTABLE" start "[email protected]"

и затем добавьте следующую строку:

export CATALINA_OPTS="$CATALINA_OPTS -Djava.net.preferIPv4Stack=true"

Если у нас еще нет файла<TOMCAT_HOME>/bin/setenv.sh, создайте его, используя:

exec authbind --deep "$PRGDIR"/"$EXECUTABLE" start "[email protected]"
export CATALINA_OPTS="$CATALINA_OPTS -Djava.net.preferIPv4Stack=true"

4. Перезагрузите сервер

Теперь, когда мы внесли все необходимые изменения в нашу конфигурацию, мы можем запустить или перезапустить сервер Tomcat и получить к нему доступ через порт80.

5. Заключение

В этой статье мы показали, как изменить порт Apache Tomcat с8080 по умолчанию на порт80. Стоит отметить, что этот процесс одинаков для версий Tomcat6.x,7.x и8.x.