RedHat系ディストリビューションであるCentOS7でapacheをインストールします。
CentOS7でやる必要があったためやりましたが、2024年6月30日がサポート期限であるため非推奨です。
apacheは言わずもがなかもしれませんが、世界中で最も使用されているオープンソースのWebサーバーソフトウェアです。
こちらをインストールする作業はDockerなどで環境をよく構築する私にとって毎回やる作業なので手順化しようと思います。
バージョン指定してインストールする場合は他の手順でインストールする必要がありますが、最新版のインストールではリポジトリを使う手順が早いためこちらの手順で進めます。
epelリポジトリをインストールする
まずrootユーザーに切り替えてください。
su -
suコマンドはスーパーユーザー権限になりすませるコマンドです。
-は現在のシェルでユーザーを切り替えることを指定します。
切り替えられたらepelリポジトリをインストールします。
yum -y install epel-release
epelはExtra Packages for Enterprise Linuxの略でデフォルトでは含まれていないソフトウェアパッケージを提供してくれるリポジトリです。
iusリポジトリをインストールする
iusリポジトリをインストールします。
yum -y install https://repo.ius.io/ius-release-el7.rpm
iusは最新の機能やデフォルトではないソフトウェアを提供してくれるリポジトリです。
apacheに必要なパッケージをインストールする
新しいパッケージをインストールする前にインストール済みのパッケージを最新版にアップデートしておきます。
yum -y update
Linuxで基本的なパッケージを提供するbaseリポジトリから7つのパッケージをインストールします。
yum --disablerepo=ius,epel --enablerepo=base -y install centos-logos.noarch mailcap openldap-devel expat-devel libdb-devel openssl perl
–disablerepoで前手順でインストールしたepelとiusのリポジトリを無効化し、–enablerepoでbaseを有効化しています。
centos-logos.noarchはCentOSのロゴを含めた各種画像を提供してくれるパッケージです。
必要はないですが、入れている方も多いので入れておきます。
mailcapはMIMEタイプに対応するアプリケーションが意図しないMIMEタイプが来たときにどのように反応するかを設定します。
MIMEはMultipurpose Internet Mail Extensionsの略でインターネット上のファイルを識別するためのものです。
openldap-develはOpenLDAPサーバーの開発に必要なライブラリやファイルを提供します。
LDAPはネットワーク上のディレクトリサービスにアクセスするためのプロトコルで、OpenLDAPはそのプロトコルを利用するオープンソースのソフトウェアです。
expat-develはXMLパーサのライブラリであるexpatの開発者向けパッケージです。
libdb-develはBerkeley DBを利用したアプリケーションを開発するためのパッケージです。
ただRHEL(RedHat Enterprise Linux)では非推奨になったようなので今後は使わずに別のものを入れたほうがいいかもしれません。
脱線するため詳しくは書きません。
opensslは暗号化ライブラリとツールを提供し、通信の暗号化や認証で使います。
perlはプログラミング言語のPerlのライブラリやモジュールが入っています。
baseリポジトリからインストールできたら、今度はepelリポジトリから2つのパッケージをインストールします。
yum --disablerepo=ius --enablerepo=epel -y install nghttp2 brotli
iusを無効化してepelを有効化してパッケージをインストールしています。
nghttp2はhttp/2を実現するためのサーバーやクライアントを提供するパッケージです。
brotliとはGoogleが開発したデータ圧縮アルゴリズムです。
最後にiusリポジトリからhttpdパッケージその他をインストールすれば完了です。
yum -y install --disablerepo=base,extras,updates,epel --enablerepo=ius httpd httpd-devel mod_ssl
base,extras,updates,epelリポジトリを無効化してiusを有効化しています。
httpdパッケージはapache httpdサーバーを提供します。
httpd-develはhttpdサーバーの開発のためのファイルやライブラリを提供します。
mod_sslはhttpdサーバーをhttps化するためのパッケージです。
httpdサーバーを起動する
apacheがインストールできたため、確認の意味も込めてhttpdサーバーを起動してみます。
systemctl start httpd
問題なく起動すれば完了です。
もし上がらないようであれば何の問題があるのか確認し対応しましょう。
systemctl status httpd