CentOS7のApache最新版アップデート

VPSのCentOS7.9にインストールしているApacheを最新バージョン2.4.46(2020.8.7release)にアップデート

CentOS7をインストールした際のApacheのデフォルトバージョンは、2.4.6となり、標準リポジトリでは、以降のバージョンにアップデートされません。
最新バージョンのパッケージをインストールするためにはIUSリポジトリを追加する必要があります。

◆リポジトリの追加

必要なリポジトリとして、EPEL及びIUSが必要になりますので追加します。

・EPELリポジトリ

EPELリポジトリはインストール済みだったので、省略
追加する場合は、以下のコマンドでインストールします。

・IUSリポジトリ

1行目:yumでIUSリポジトリを追加インストール

・IUSリポジトリの無効化

5行目:「enabled」の設定値を「1」の有効から「0」の無効に変更し、必要時のみ有効にして使用する

◆httpdの削除

・サービスの停止

1行目:httpdサービスを停止

・httpd関連パッケージを削除

1行目:「httpd*」で関連パッケージを含めて削除
19~22行目:依存性関連で削除されたパッケージに関しては新バージョンのhttpdインストール時に再度追加する必要があるのでテキストなどにコピーしておく
37,42~45行目:「警告」にあるように各設定ファイルのバックアップが作成されているので、インストール後に設定ファイルの変更で使用する

◆インストール

・httpdのインストール

1行目:標準リポジトリを無効にし、iusリポジトリを使用してhttpdをインストール

次に依存性関係でインストールされたパッケージの他、必要なパッケージをインストールしていきます。

・必要パッケージのインストール

1行目:iusリポジトリから「httpd-devel」「mod_ssl」をインストール

1行目:httpdを削除した際に依存関係で一緒に削除された「php」をインストール

phpのインストールするバージョンによって、リポジトリを導入や指定をする必要があります。
前回PHP7.4をインストールした際の記事を参考にしてください。「PHPのアップデート

同様に「mod_perl」「python2-certbot-apache」をインストール

・nghttp2のインストール

1行目:「nghttpd2」をepelリポジトリからインストール

依存性関連で必要なパッケージは追加されると思いますが、足りないものがあった場合は、適宜追加します。

「nghttp2」パッケージは、「HTTP/2」を使用するためのコアエンジンで、Webサイト表示速度の高速化技術です。
下記リンクにHTTP/2についての記事が図解入りであったので参考にしてください。

カゴヤのサーバー研究室「【図解】HTTP/2って?HTTP/1.1との違いと導入メリット・課題まとめ

◆設定

・設定ファイルの変更

「httpd関連パッケージを削除」の項目で前述したとおり、各confファイルがバックアップ(.conf.rpmsaveの名前)されているので、「diff」コマンドを利用しながら追加・変更等をしていきます。

私の場合、下記の設定ファイルが対象でした。

・設定ファイルの構文チェック

何れかのコマンドで設定ファイルのエラーチェックができるので確認します。

◆httpdの起動

・自動起動設定と確認

1行目:自動起動設定し、サーバ起動時にサービスが自動で起動するように設定する
3行目:自動起動設定確認
4行目:「enabled」有効、「disabled」無効

・起動

1行目:httpdを起動する

◆動作確認

・httpdの状態確認

1行目:statusで状態確認する
2行目:「」が緑色
4行目:「Active」が「active (running)」と緑色で表示されていれば問題なし

・表示確認

ブラウザでWebサイトにアクセスし、正常に表示されることを確認します。

バージョンアップをする際には、サービス停止してからインストール、設定ファイルの変更等、サービス起動と時間を要することになり、更にエラーや不具合が起きた場合、サービスのダウンタイムが長くなることがあることを承知の上で実施する必要があります。

いいね! & シェア お願いします。

コメントは受け付けていません。