1. 概要

デフォルトでは、ApacheTomcatはポート8080で実行されます。 場合によっては、このポートがすでに別のプロセスによって使用されている場合や、要件に別のポートを使用する必要があると記載されている場合があります。

この簡単な記事では、ApacheTomcatサーバーのHTTPポートを変更する方法を紹介します。 この例ではポート80を使用しますが、プロセスはどのポートでも同じです。

2. ApacheTomcatの構成

このプロセスの最初のステップは、ApacheTomcat構成を変更することです。

まず、サーバーの場所を特定します /conf/server.xml ファイル。 次に、HTTPコネクタポートを構成する行を見つけます。

<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>

そして、ポートを80に変更します。

<Connector connectionTimeout="20000" port="80" protocol="HTTP/1.1" redirectPort="8443"/>

3. LinuxおよびUnixシステムの変更

LinuxおよびUnixシステムでは、1024未満のポート番号は特権ポートであり、rootとして実行されるプログラム用に予約されています。 ポート1024以降で実行している場合は、セクション4で説明されているように、このセクションの残りの部分をスキップして、サーバーの起動/再起動に直接進むことができます。

rootまたはsudoアクセスがある場合、次のコマンドを使用して、rootとしてTomcatプロセスを開始できます。

sudo startup.sh

ただし、rootまたはsudoアクセスがない場合は、以下に説明するように、authbindをインストールして構成する必要があります。

注:非特権ポート 1024 以降)を使用する場合、このセクションの残りの部分をスキップして、サーバーの起動/再起動に直接移動できます。

3.1. authbindパッケージをインストールします

Linuxベースのシステムの場合: authbindパッケージをダウンロードしてインストールします。

sudo apt-get install authbind

MacOSシステムの場合:まず、こちらからMacOS用の authbind をダウンロードし、パッケージを展開します。 次に、展開されたディレクトリに移動して、ビルドとインストールを行います。

$ cd MacOSX-authbind
$ make
$ sudo make install

3.2. ApacheTomcatでauthbindを有効にする

開ける /conf/server.xml 次の行のファイルのコメントを解除します。

AUTHBIND=yes

3.3. ポートの読み取りと実行を有効にする

次に、ポートの読み取りおよび実行権限を有効にするために、いくつかのコマンドを実行する必要があります。

次に、Tomcatバージョン8.xを使用した例を示します。

sudo touch <AUTHBIND_HOME>/byport/80
sudo chmod 500 <AUTHBIND_HOME>/byport/80
sudo chown tomcat8 <AUTHBIND_HOME>/byport/80

注:Tomcatバージョン6または7を使用する場合は、最後のコマンドでtomcat8の代わりにそれぞれtomcat6またはtomcat7を使用します。

3.4. 古いバージョンのauthbindを使用する

IPv6をサポートしない古いauthbindバージョンが2.0.0 より前)を使用している場合は、IPv4をデフォルトにする必要があります。

すでに持っている場合 /bin/setenv.sh ファイルを作成し、次を置き換えます。

exec "$PRGDIR"/"$EXECUTABLE" start "$@"

この行で:

exec authbind --deep "$PRGDIR"/"$EXECUTABLE" start "$@"

次に、次の行を追加します。

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

まだ持っていない場合 /bin/setenv.sh ファイルを作成し、次を使用して作成します。

exec authbind --deep "$PRGDIR"/"$EXECUTABLE" start "$@"
export CATALINA_OPTS="$CATALINA_OPTS -Djava.net.preferIPv4Stack=true"

4. サーバーを再起動します

構成に必要なすべての変更を加えたので、Tomcatサーバーを起動または再起動して、ポート80でアクセスできます。

5. 結論

この記事では、ApacheTomcatのポートをデフォルトの8080からポート80に変更する方法を示しました。 このプロセスは、Tomcatバージョン 6.x 7.x 、および8.xでも同じであることに注意してください。