脆弱性の問題等もあるしApache httpdのインストール方法を再確認します。
httpdとかは1回インストールするとその後はそこまで頻繁にアップデートしないことが多々あるので・・・。
必要なライブラリをダウンロード
httpdのインストールに必要なApache関連のライブラリをダウンロードします。
必要なライブラリは以下です。
インストールするライブラリは2022/08/20日現在の最新バージョンを使用していきます。
Apache httpdをダウンロード
$ cd /usr/local
$ wget https://dlcdn.apache.org//httpd/httpd-2.4.54.tar.gz
$ tar xvfz httpd-2.4.54.tar.gz
APR, APR-utilをダウンロード
$ cd httpd-2.4.54/srclib
$ wget https://dlcdn.apache.org//apr/apr-1.7.0.tar.gz
$ wget https://dlcdn.apache.org//apr/apr-util-1.6.1.tar.gz
$ tar xvfz apr-1.7.0.tar.gz
$ tar xvfz apr-util-1.6.1.tar.gz
Apache httpdインストールのコマンド実行時にエラーとなるため事前にフォルダ名を変更する
$ mv apr-1.7.0/ apr
$ mv apr-util-1.6.1/ apr-util
不要なファイルを削除
$ rm -f apr*tar.gz
Apache httpd インストール
$ cd /usr/local/httpd-2.4.54
$ ./configure -prefix=/usr/local/httpd-2.4.54 --enable-so --enable-shared --enable-ssl --enable-rewrite --enable-expires --enable-deflate --enable-headers --with-included-apr --enable-substitute --with-included-apr-util
-- 省略 --
configure: summary of build options:
Server Version: 2.4.54
Install prefix: /usr/local/httpd-2.4.54
C compiler: gcc -std=gnu99
CFLAGS: -g -O2 -pthread
CPPFLAGS: -DLINUX -D_REENTRANT -D_GNU_SOURCE
LDFLAGS:
LIBS:
C preprocessor: gcc -E
$ make
-- 省略 --
make[4]: Leaving directory `/root/work/httpd-2.4.54/modules/mappers'
make[3]: Leaving directory `/root/work/httpd-2.4.54/modules/mappers'
make[2]: Leaving directory `/root/work/httpd-2.4.54/modules'
make[2]: Entering directory `/root/work/httpd-2.4.54/support'
make[2]: Leaving directory `/root/work/httpd-2.4.54/support'
make[1]: Leaving directory `/root/work/httpd-2.4.54'
$ make install
-- 省略 --
Installing configuration files
Installing HTML documents
Installing error documents
Installing icons
Installing CGIs
Installing header files
Installing build system files
Installing man pages and online manual
make[1]: Leaving directory `/root/work/httpd-2.4.54'
インストール時に出るエラー
このエラーが出たらこちらを参照してください。
zlibが見つからなかった場合の対処法です。
checking for zlib location… not found
checking whether to enable mod_deflate… configure: error: mod_deflate has been requested but can not be built due to prerequisite failures
もう1つ。このエラーが出たらこちらを参照してください。
OpenSSLのバージョンが古かった場合の対処法です。
configure: WARNING: OpenSSL version is too old
no
checking whether to enable mod_ssl… configure: error: mod_ssl has been requested but can not be built due to prerequisite failures
インストールしたバージョンを有効にする
上記手順ではまだ以前のhttpdバージョンのままなのでsystemdのUnit設定ファイルを編集していきます。
今まであまり意識していなかったのですが下記URLによると/usr/lib/systemd/systemと/etc/systemd/systemでは使い道が異なるので /etc/systemd/system (管理者によるカスタマイズファイル置き場)にUnitファイルを作成します。
https://weblabo.oscasierra.net/centos7-systemd-files/
$ vi /etc/systemd/system/httpd.service
[Unit]
Description=Apache 2.4.54
After=syslog.target network.target
[Service]
Type=forking
ExecStart=/usr/local/httpd-2.4.54/bin/apachectl -k start
ExecStop=/usr/local/httpd-2.4.54/bin/apachectl -k stop
ExecReload=/usr/local/httpd-2.4.54/bin/apachectl -k graceful
[Install]
WantedBy=multi-user.target
設定ファイルを有効化します。
$ systemctl enable httpd
Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /etc/systemd/system/httpd.service.
$ systemctl start httpd
$ systemctl status httpd
● httpd.service - Apache 2.4.54
Loaded: loaded (/etc/systemd/system/httpd.service; enabled; vendor preset: disabled)
Active: active (running) since Fri 2022-08-19 10:00:34 PDT; 5s ago
Process: 109177 ExecStart=/usr/local/httpd-2.4.54/bin/apachectl -k start (code=exited, status=0/SUCCESS)
Main PID: 109183 (httpd)
Tasks: 82
CGroup: /system.slice/httpd.service
tq109183 /usr/local/httpd-2.4.54/bin/httpd -k start
tq109184 /usr/local/httpd-2.4.54/bin/httpd -k start
tq109185 /usr/local/httpd-2.4.54/bin/httpd -k start
mq109186 /usr/local/httpd-2.4.54/bin/httpd -k start
Aug 19 10:00:34 localhost.localdomain systemd[1]: Starting Apache 2.4.54...
Aug 19 10:00:34 localhost.localdomain apachectl[109177]: AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using ... message
Aug 19 10:00:34 localhost.localdomain systemd[1]: Started Apache 2.4.54.
Hint: Some lines were ellipsized, use -l to show in full.
これでインストール完了です。
以上です。
コメント