GNU/Linux >> Linux の 問題 >  >> Linux

Apache with Tomcat、ステップバイステップのインストールおよび構成ガイド

この記事では、UbuntuにTomcat 10をインストールして構成する方法と、mod_jkコネクタを使用してApacheHTTPサーバーと統合する方法を示します。

Apache Tomcatは、JavaWebアプリケーションのデプロイと提供に使用されるオープンソースのWebサーバーおよびサーブレットコンテナです。最新のJavaWebフレームワークのほとんどは、JavaServer Faces、Struts、Springなどのサーブレットに基づいています。

Apache Tomcatは、デフォルトでポート8080にHTTPコネクタも提供します。つまり、TomcatはHTTPサーバーとしても使用できます。ただし、Tomcatのパフォーマンスは、ApacheHTTPサーバーなどの指定されたWebサーバーのパフォーマンスほど良くありません。

ほとんどの本番環境では、TomcatはApacheHTTPサーバーと組み合わせて使用​​されます。 Apache HTTPサーバーは、HTMLや画像などの静的コンテンツに対応し、動的コンテンツのリクエストをTomcatに転送します。

このインストールおよび構成ガイドは適用 Ubuntu上のTomcat10でApacheに。

1。 Javaをインストールする

まず、いつものように、パッケージを更新します:

sudo apt update

Tomcatサーバーを実行するには、システムにJavaがインストールされている必要があります。 Tomcat 10には、システムにJavaSE8以降のバージョンがインストールされている必要があります。次のコマンドを実行して、OpenJDK11JDKパッケージをインストールします。

sudo apt install openjdk-11-jdk

現在アクティブなJavaバージョンを確認してください:

java -version
openjdk version "11.0.11" 2021-04-20
OpenJDK Runtime Environment (build 11.0.11+9-Ubuntu-0ubuntu2.20.04)
OpenJDK 64-Bit Server VM (build 11.0.11+9-Ubuntu-0ubuntu2.20.04, mixed mode, sharing)

2。 Tomcatシステムユーザーの作成

ルートでTomcatサーバーを実行する ユーザーはセキュリティリスクです。したがって、Tomcatサーバーを実行するために別のユーザーアカウントを作成することをお勧めします。

次のコマンドは、tomcatという名前のユーザーとグループを作成します。 システム上:

sudo useradd -m -d /opt/tomcat -U -s /bin/false tomcat

3。 ApacheTomcat10をインストールして構成する

Tomcatはプラットフォームに依存しないツールであり、Javaがインストールされている限り、インストールは簡単なプロセスです。まず、公式Webサイトから目的のバージョンをダウンロードしてから、ファイルシステムで解凍する必要があります。

次に、Tomcatの公式ダウンロードページからTomcatの最新のバイナリリリースをダウンロードします。

wget https://apache.mirrors.nublue.co.uk/tomcat/tomcat-10/v10.0.8/bin/apache-tomcat-10.0.8.tar.gz

ダウンロードが完了したら、tarファイルを/opt/tomcatに抽出します ディレクトリ:

sudo tar xzvf apache-tomcat-10*tar.gz -C /opt/tomcat --strip-components=1

次に、適切なファイル権限を設定します:

sudo chown -R tomcat:tomcat /opt/tomcat/
sudo chmod -R u+x /opt/tomcat/bin

TomcatサーバーでWebApplicationManagerのユーザーを作成する必要があります。 Apache Tomcat Webアプリケーションマネージャを使用するには、新しいユーザーアカウントを設定する必要があります。

これを行うには、tomcat-users.xmlを編集します エディター内のファイル:

sudo vim /opt/tomcat/conf/tomcat-users.xml

次のコードを<tomcat-users>内に貼り付けます </tomcat-users> タグ。必ずPASSWORDを変更してください 管理者およびマネージャーのアクセス用。

<!-- user manager can access only manager section -->
<role rolename="manager-gui" />
<user username="manager" password="PASSWORD" roles="manager-gui" />

<!-- user admin can access manager and admin section both -->
<role rolename="admin-gui" />
<user username="admin" password="PASSWORD" roles="manager-gui,admin-gui" />

Tomcatは、Webベースの管理コンソールを提供します。デフォルトのTomcatサーバーでは、ManagerおよびHostManagerアプリケーションへのリモートアクセスは許可されていません。ただし、ローカルホストからのみアクセスできます。

リモート接続を有効にするには、以下の手順に従ってください。

ファイルを作成しますconf/Catalina/localhost/manager.xml

sudo vim /opt/tomcat/conf/Catalina/localhost/manager.xml

次のコンテンツを追加します:

<Context privileged="true" antiResourceLocking="false" docBase="{catalina.home}/webapps/manager">
    <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="^.*$" />
</Context>

また、リモートホストにアクセスできるようにするには、host-managerwebappのxmlファイルを作成する必要があります。

sudo vim /opt/tomcat/conf/Catalina/localhost/host-manager.xml

次のコンテンツを追加します:

<Context privileged="true" antiResourceLocking="false" docBase="${catalina.home}/webapps/host-manager">
    <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="^.*$" />
</Context>

4。 TomcatSystemdサービスを作成する

Tomcatをsystemdサービスとして管理するための起動スクリプトを作成する必要があります。 tomcat.serviceを作成しましょう ファイル。

sudo vim /etc/systemd/system/tomcat.service

以下をファイルに貼り付けます:

[Unit]
Description=Tomcat
After=network.target

[Service]
Type=forking
User=tomcat
Group=tomcat
Environment="JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64"
Environment="JAVA_OPTS=-Djava.security.egd=file:///dev/urandom"
Environment="CATALINA_BASE=/opt/tomcat"
Environment="CATALINA_HOME=/opt/tomcat"
Environment="CATALINA_PID=/opt/tomcat/temp/tomcat.pid"
Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC"

ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh

[Install]
WantedBy=multi-user.target

systemdデーモンをリロードして、変更を適用します:

sudo systemctl daemon-reload

起動時に自動的に起動するようにTomcatを設定します:

sudo systemctl enable tomcat

5。 ApacheHTTPサーバーをインストールする

Apacheは、Ubuntuのデフォルトのソフトウェアリポジトリ内で利用できます。インストールするには、次のコマンドを入力します。

sudo apt install apache2

6。 Apacheで動作するようにTomcatを構成する

ApacheTomcatサーバープロセスをApacheHTTPサーバーと統合するには、mod_jkモジュールが必要です 、TomcatとApacheの間のインターフェースを実装し、ApacheとTomcatをニーズに合わせて構成するためのいくつかの小さな手順を組み合わせます。

6.1mod_jkモジュールのインストール

mod_jkのインストールと構成 Webサーバーとアプリケーションサーバーを連携させるための鍵です。それでは、インストールしましょう:

sudo apt install libapache2-mod-jk

6.2ApacheおよびTomcatを使用したmod_jkの構成。

ApacheサーバーがリクエストをTomcatにリダイレクトできるように、TomcatでAJPコネクタを有効にする必要があります。これを行うには、Tomcatのserver.xmlを編集します。 ファイル。

sudo vim /opt/tomcat/conf/server.xml

以下のAJPコネクタがアクティブで、コメントアウトされていないことを確認してください。

<Connector protocol="AJP/1.3" port="8009" secretRequired="false" redirectPort="8443" />

JKモジュールをロードして初期化するようにApacheHTTPサーバーを構成する必要があります。

/etc/apache2/workers.propertiesを作成する必要があります ファイル。このファイルは、Apacheがリクエストを渡すことができるTomcatの「ワーカー」のリストを定義します。

sudo vim /etc/apache2/workers.properties

以下をファイルに貼り付けます:

# Define 1 real worker using ajp13
worker.list=worker1

# Set properties for worker1 (ajp13)
worker.worker1.type=ajp13
worker.worker1.host=localhost
worker.worker1.port=8009

次に、プライマリApache構成ファイルapache2.confでこのファイルを参照します :

sudo vim /etc/apache2/apache2.conf

最後に次の行を追加します:

JkWorkersFile /etc/apache2/workers.properties

# Where to put jk shared memory
JkShmFile /var/log/apache2/mod_jk.shm

# Where to put jk logs
JkLogFile /var/log/apache2/mod_jk.log

# Set the jk log level [debug/error/info]
JkLogLevel info

# Select the timestamp log format
JkLogStampFormat "[ %a %b %d %H:%M:%S %Y ] "

6.3Apacheで管理するURLを構成する

この時点で、Apacheを構成して、処理してTomcatにハンドオフするURLと、Apache自体に処理させるURLを指示する必要があります。

sudo vim /etc/apache2/sites-enabled/000-default.conf

DocumentRootの下に次の行を追加します エントリ。これにより、ApacheWebサーバーを介してJRSをリクエストできます。

JkMount /examples worker1
JkMount /examples/* worker1

7。動作していることを確認する方法

ApacheおよびTomcatサービスを再起動します:

sudo systemctl restart apache2
sudo systemctl restart tomcat

サーバーを起動したら、インターネットブラウザを開き、URL http://server_ip_address:8080に移動します。 。下の図のようなページが表示された場合、Tomcatは正しくインストールされています。

Apache HTTPサーバーとTomcatの統合が機能していることを確認する簡単な方法は、Tomcatが提供するサンプルファイルの1つを要求することです。

ブラウザでhttp://server_ip_address/examples/を指定します いくつかのサンプルアプリケーションを実行します。

おめでとう! TomcatとApacheHTTPServerの統合に成功しました。


Linux
  1. ApacheWebサーバーを構成する方法

  2. Kali Linux on VirtualBox:ステップバイステップのインストールガイド

  3. VMware ESXi のステップバイステップ インストール ガイド (スクリーンショット付き)

  1. ApacheとMySQLを使用したUbuntuLinuxへのWordPressのインストール

  2. スクリーンショット付きのFedora27サーバーインストールガイド

  3. Samba 初心者向けガイド (インストールと構成)

  1. スクリーンショット付きのKaliLinuxレビューおよびインストールガイド

  2. SUSE Linux Enterprise Server(SLES)12SP2インストールガイドとスクリーンショット

  3. Elementary OS 5.0(Juno)インストールガイドとスクリーンショット