CentOS7にApache(httpd)2.4の「最新版」をインストールする
このページではLinuxにおけるWebサーバーのApache(httpd)2.4の最新版をインストールする方法を詳しく紹介します。
この「最新版」というところがポイントになり通常のyumインストールと違うところです。
CentOS7のApacheの「最新版」
まず前提として注意したいのが同じapache2.4の間でもかなりの差があるということです。
「普通にCentOS7でyumでインストールしたらapache2.4入るよ?最新版だよ?」と思うかもしれません。
いえ、それでは古すぎます。
CentOS7の初期リポジトリ(base)のhttpd2.4は実は2013年にリリースした2.4.6なのです。現在apacheの公式は 2.4.47(2021/4リリース)と40回以上のマイナーバージョンアップの差があります。
apache2.4はリリースされてから10年近く立ち超ロングランのソフトウェアバージョンです。アップデートはなるべくキャッチアップしながらインストールするのが良いと思います。
参考までにapacheのバージョンの歴史
古いバージョンのApacheを削除
現在、古いバージョンのhttpdがインストールされていれば削除しておきます。
#systemctl stop httpd ←httpd停止
#systemctl disable httpd.service ←自動起動無効
#yum remove httpd* ←削除
※removeしても/etc/conf, /etc/conf.d以下のファイルは残ります
リポジトリを追加する
CentOS7に最新のhttpdをインストールするには以下の2つのリポジトリを使います
- epelレポジトリ(Fedoraが提供するRedHat向けのパッケージ開発プロジェクト)
- iusレポジトリ(Linux向けのパッケージ開発の有志プロジェクト)
epelリポジトリのインストール
epelリポジトリのインストールします。
# yum install epel-release
指定なしでは次からyumでこのリポジトリを使わないように無効にします。
# vi /etc/yum.repos.d/epel.repo
[epel]
name=Extra Packages for Enterprise Linux 7 - $basearch
#baseurl=http://download.fedoraproject.org/pub/epel/7/$basearch
metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-7&arch=$basearch&infra=$infra&content=$contentdir
failovermethod=priority
enabled=1 ←ここを0にする
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
iusリポジトリのインストール
iusレポジトリのインストールします。
# yum -y install https://repo.ius.io/ius-release-el7.rpm
指定なしでは次からyumでこのリポジトリを使わないように無効にします。
# vi /etc/yum.repos.d/ius.repo
[ius]
name = IUS for Enterprise Linux 7 - $basearch
baseurl = https://repo.ius.io/7/$basearch/
enabled = 1 ←ここを0にする
repo_gpgcheck = 0
gpgcheck = 1
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-IUS-7
事前に必要なライブラリを追加する
httpdのインストールを実行する前に事前準備として、baseとepelリポジトリからそれぞれ以下のライブラリのインストールが必要です
# yum -y install centos-logos.noarch mailcap openldap-devel expat-devel libdb-devel openssl perl
# yum --enablerepo=epel -y install nghttp2 brotli
httpd本体インストール
httpd本体をiusリポジトリからインストールします。
# yum -y install --disablerepo=base,extras,updates --enablerepo=ius httpd httpd-devel mod_ssl
インストールの確認
インストールされているか確認してみます。
@iusはiusリポジトリからインストール済という意味です。
# yum list | grep httpd
httpd24u.x86_64 2.4.46-1.el7.ius @ius ←インストールできている
httpd24u-devel.x86_64 2.4.46-1.el7.ius @ius
httpd24u-filesystem.noarch 2.4.46-1.el7.ius @ius
httpd24u-mod_ssl.x86_64 1:2.4.46-1.el7.ius @ius
httpd24u-tools.x86_64 2.4.46-1.el7.ius @ius
httpd.x86_64 2.4.6-97.el7.centos updates
httpd-devel.x86_64 2.4.6-97.el7.centos updates
httpd-manual.noarch 2.4.6-97.el7.centos updates
httpd-tools.x86_64 2.4.6-97.el7.centos updates
httpdの起動
httpdを起動します
# systemctl start httpd ←httpdの起動
ブラウザで確認
ブラウザで確認してみましょう。
デスクトップ環境であればhttp://localhost/でアクセスします。
初期状態では以下のような画面が表示されるはずです。
httpdの自動起動設定
OSが再起動しても自動的にhttpdが起動するようにします。
# systemctl enable httpd.service ←自動起動ON
apache2の設定をする
apache2の各設定をするには以下のファイルを編集する必要があります。
/etc/httpd/httpd.conf
/etc/httpd/conf.d/以下のconfファイル
くわしくは以下の記事を参考にしてください。
関連記事
CentOS7の初期リポジトリはPHPもそうですが、今となっては初期状態でのyumインストールはかなり古いものです。他にも最新版をインストールする記事を消化しますのでよろしければ参考にしてみてください!
コメント