Ubuntu 20.04にaptコマンドで最新版Apacheをインストール

Ubuntu 20.04にaptコマンドで最新版Apacheをインストール サーバー

「sudo apt-get install apache2」

上記のコマンドでは、最新版のApacheをインストールできません。
Ubuntu 20.04において、何も工夫しなければ。

最新バージョンのApacheをインストールするのは、一工夫が必要です。
この記事では、その一工夫をわかりやすく説明しています。

本記事の内容

  • OS標準のApache
  • aptコマンドによる最新版Apacheのインストール
  • インストールしたApacheの動作確認

それでは、上記に沿って解説していきます。

OS標準のApache

UbuntuやDebianには、公式のリポジトリが存在しています。
aptコマンドで簡単にインストールできるのは、その公式リポジトリがあるからです。

その公式リポジトリには、 Apacheが登録されています。
一般的に利用されるモノは、公式リポジトリに登録されているということです。

そんな便利な公式リポジトリですが、デメリットもあります。
OS毎にそれぞれのバージョンが固定されています。

時間の経過とともに、ソフトウェアのバージョンが古くなるのです。
UbuntuとApacheのバージョン対応関係は、以下。

OSApacheリリース日
Ubuntu 18.04 LTS2.4.292017/10/23
Ubuntu 20.04 LTS2.4.412019/08/14
Ubuntu 21.042.4.462020/08/07

LTS版は、Ubuntu 20.04が最新です。
そして、Ubuntu 20.04の場合、2.4.41がOS標準のApacheのバージョンとなります。

Apache 2.4.41は、約2年前のバージョンです。
ちなみに最新は、Apache 2.4.46となります。

そもそも、Apacheの更新頻度は高くないようですね。
そうだとすると、できる限りで最新バージョンのApacheを利用したくなります。
一つ一つのバージョンアップには、それだけ意味があると言えからです。

上記より、OS標準のソフトウェアには良い面も悪い面もあるということです。

以上、OS標準のApacheについての説明でした。
次は、aptコマンドで最新版Apacheをインストールする方法を説明します。

aptコマンドによる最新版Apacheのインストール

まずは、Ubuntu 20.04のOS標準であるApacheのパッケージを確認しましょう。

$ sudo apt show apache2
Package: apache2
Version: 2.4.41-4ubuntu3.1
Priority: optional
Section: web
Origin: Ubuntu
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Original-Maintainer: Debian Apache Maintainers <debian-apache@lists.debian.org>
Bugs: https://bugs.launchpad.net/ubuntu/+filebug
Installed-Size: 541 kB
Provides: httpd, httpd-cgi
Pre-Depends: dpkg (>= 1.17.14)
Depends: apache2-bin (= 2.4.41-4ubuntu3.1), apache2-data (= 2.4.41-4ubuntu3.1), apache2-utils (= 2.4.41-4ubuntu3.1), lsb-base, mime-support, perl:any, procps
Recommends: ssl-cert
Suggests: apache2-doc, apache2-suexec-pristine | apache2-suexec-custom, www-browser, ufw
Conflicts: apache2.2-bin, apache2.2-common
Breaks: libapache2-mod-proxy-uwsgi (<< 2.4.33)
Replaces: apache2.2-bin, apache2.2-common, libapache2-mod-proxy-uwsgi (<< 2.4.33)
Homepage: https://httpd.apache.org/
Task: lamp-server
Download-Size: 95.5 kB
APT-Manual-Installed: no
APT-Sources: http://archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages
Description: Apache HTTP サーバ
Apache HTTP Server Project は、標準準拠のオープンソースソフトウェアとして、 安全で、効率的で、拡張性のある HTTP
サーバを構築することを目的としています。 その成果は、インターネットで長い間ナンバーワンの web サーバとなっています。
.
このパッケージをインストールすれば、設定ファイル、init スクリプト、 補助スクリプトを含むすべてをインストールできます。

N: 追加レコードが 1 件あります。表示するには '-a' スイッチを付けてください。

確かに、OS標準となるApache 2.4.41ですね。
このバージョンではなく、最新であるApache 2.4.46をインストールしたいわけです。

そこで、インストール対象となるパッケージを変更(更新)します。
その処理を行うのが、次のコマンドです。

$ sudo add-apt-repository ppa:ondrej/apache2

上記を実行すると、次のように表示されます。

This branch follows latest Apache2 packages as maintained by the Debian Apache2 team with couple of compatibility patches on top.

It also includes some widely used Apache 2 modules (if you need some other feel free to send me a request).

IMPORTANT: The <foo>-backports is now required on older Ubuntu releases.

BUGS&amp;FEATURES: This PPA now has a issue tracker: https://deb.sury.org/#bug-reporting

PLEASE READ: If you like my work and want to give me a little motivation, please consider donating: https://deb.sury.org/#donate
More info: https://launchpad.net/~ondrej/+archive/ubuntu/apache2
Press [ENTER] to continue or Ctrl-c to cancel adding it.

「ppa:ondrej/apache2」に関する説明です。
「Enter」を押して、処理を進めます。

取得:1 http://security.ubuntu.com/ubuntu focal-security InRelease [114 kB]
ヒット:2 http://archive.ubuntu.com/ubuntu focal InRelease
取得:3 http://ppa.launchpad.net/ondrej/apache2/ubuntu focal InRelease [23.8 kB]
取得:4 http://archive.ubuntu.com/ubuntu focal-updates InRelease [114 kB]
ヒット:5 http://ppa.launchpad.net/ondrej/php/ubuntu focal InRelease
取得:6 http://archive.ubuntu.com/ubuntu focal-backports InRelease [101 kB]
取得:7 http://ppa.launchpad.net/ondrej/apache2/ubuntu focal/main amd64 Packages [4,664 B]
取得:8 http://ppa.launchpad.net/ondrej/apache2/ubuntu focal/main Translation-en [3,252 B]
360 kB を 2秒 で取得しました (170 kB/s)
パッケージリストを読み込んでいます... 完了

aptが管理できるパッケージリストが更新されました。
そこに最新版のApacheが存在しているはずです。
再度、パッケージを確認します。

$ sudo apt show apache2
Package: apache2
Version: 2.4.46-4+deb.sury.org+1+ubuntu20.04.1+deb.sury.org+5
Priority: optional
Section: httpd
Maintainer: Debian Apache Maintainers <debian-apache@lists.debian.org>
Installed-Size: 522 kB
Provides: httpd, httpd-cgi
Depends: apache2-bin (= 2.4.46-4+deb.sury.org+1+ubuntu20.04.1+deb.sury.org+5), apache2-data (= 2.4.46-4+deb.sury.org+1+ubuntu20.04.1+deb.sury.org+5), apache2-utils (= 2.4.46-4+deb.sury.org+1+ubuntu20.04.1+deb.sury.org+5), lsb-base, mime-support, perl:any, procps
Recommends: ssl-cert
Suggests: apache2-doc, apache2-suexec-pristine | apache2-suexec-custom, www-browser
Conflicts: apache2.2-bin, apache2.2-common
Breaks: libapache2-mod-proxy-uwsgi (<< 2.4.33)
Replaces: apache2.2-bin, apache2.2-common, libapache2-mod-proxy-uwsgi (<< 2.4.33)
Download-Size: 162 kB
APT-Sources: http://ppa.launchpad.net/ondrej/apache2/ubuntu focal/main amd64 Packages
Description: Apache HTTP サーバ
Apache HTTP Server Project は、標準準拠のオープンソースソフトウェアとして、 安全で、効率的で、拡張性のある HTTP
サーバを構築することを目的としています。 その成果は、インターネットで長い間ナンバーワンの web サーバとなっています。
.
このパッケージをインストールすれば、設定ファイル、init スクリプト、 補助スクリプトを含むすべてをインストールできます。

N: 追加レコードが 2 件あります。表示するには '-a' スイッチを付けてください。

Versionが、「2.4.41」から「2.4.46」へ変更していることが確認できます。
では、インストールを行います。

その前に、パッケージリストの更新は欠かないでおきましょう。

$ sudo apt-get update
$ sudo apt-get install apache2

上記を実行すると、以下の確認が行われます。

パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
以下のパッケージが自動でインストールされましたが、もう必要とされていません:
  liblua5.2-0
これを削除するには 'sudo apt autoremove' を利用してください。
以下の追加パッケージがインストールされます:
  apache2-bin apache2-data apache2-utils libapr1 liblua5.3-0
提案パッケージ:
  apache2-doc apache2-suexec-pristine | apache2-suexec-custom www-browser
以下のパッケージが新たにインストールされます:
  liblua5.3-0
以下のパッケージはアップグレードされます:
  apache2 apache2-bin apache2-data apache2-utils libapr1
アップグレード: 5 個、新規インストール: 1 個、削除: 0 個、保留: 136 個。
1,955 kB のアーカイブを取得する必要があります。
この操作後に追加で 544 kB のディスク容量が消費されます。
続行しますか? [Y/n]

「Y」を入力して、Enter。
インストールには、少しだけ時間がかかります。

以上、aptコマンドによる最新版Apache 2.4.46のインストールを説明しました。
最後は、Apache 2.4.46の動作確認を行います。

インストールしたApacheの動作確認

動作確認は、次のコマンドで行います。

$ sudo systemctl status apache2
● apache2.service - The Apache HTTP Server
     Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
     Active: active (running) since Tue 2021-06-01 11:40:25 JST; 3min 40s ago
       Docs: https://httpd.apache.org/docs/2.4/
   Main PID: 5401 (apache2)
      Tasks: 6 (limit: 9514)
     Memory: 10.1M
     CGroup: /system.slice/apache2.service
             ├─5401 /usr/sbin/apache2 -k start
             ├─5404 /usr/sbin/apache2 -k start
             ├─5405 /usr/sbin/apache2 -k start
             ├─5406 /usr/sbin/apache2 -k start
             ├─5407 /usr/sbin/apache2 -k start
             └─5408 /usr/sbin/apache2 -k start

6月 01 11:40:25 ubuntu-focal systemd[1]: Starting The Apache HTTP Server...
6月 01 11:40:25 ubuntu-focal apachectl[5400]: AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message
6月 01 11:40:25 ubuntu-focal systemd[1]: Started The Apache HTTP Server.

「Active: active (running)」と表示されています。
Apacheが起動していることを確認できます。

次は、インストールされたApacheのバージョンを確認しましょう。

$ apache2ctl -v
Server version: Apache/2.4.46 (Ubuntu)
Server built:   2021-03-13T15:08:41

最新バージョンとなるApache 2.4.46ですね。
これでコンソールでの確認はOK。

最後は、ブラウザで画面を確認しましょう。
私の環境なら、以下のURLで確認できます。

「http://192.168.33.60」

上記URLの数字部分は、ApacheをインストールしたサーバーのIPアドレスです。
したがって、みなさんの環境に合わせてIPアドレス部分は変更してください。

そして、上記URLにアクセスすると次の画面が表示されます。

この画面が見ることができれば、Apacheの動作確認としては問題ありません。

画面が見れない場合

上記の画面が見れないという場合は、ポート80の開放状況を確認してください。

$ sudo ufw status | grep '80'

何も表示されないなら、「80」は未開放という状況になります。
なお、「ufw」コマンドが動かない場合は、次の記事をご覧ください。

「ufw」コマンドが動くなら、次のコマンドを実行します。

$ sudo ufw allow 80

開放されたかどうか確認しましょう。

$ sudo ufw status | grep '80'
80                         ALLOW       Anywhere
80 (v6)                    ALLOW       Anywhere (v6)

ポートが、開放されていることを確認できます。
再度、「http://192.168.33.60」にアクセスします。

以上、インストールしたApacheの動作確認についてに説明でした。

タイトルとURLをコピーしました