【Apache】CentOS8に最小限のWebサーバ構築


CentOS8にApacheを入れてみよう!

2019月9月25日にCentOS8がリリースされました。
先日はリリースされたばかりのCentOS8を実際にインストールしてみました。
【Linux】CentOS8をインストールしてみた。【VM】

さて、前回はとりあえずインストールのみしてみました。
今回は、Apacheをインストールして最小限のWebサーバ環境を構築してみたいと思います。
ひとまず、単純に外部に公開するところまで、やってみましょう。
(PHPやMySQLはまた後日…)

■マシン環境
VMware Workstation Player 15
CentOS 8
仮想マシン構成
メモリ:2048MB
HDD:20GB
CPU:1コア

作業はrootユーザで行っていきます。


■事前作業

タイムゾーンをAsia/Tokyoに設定しておきます。
また、ntpdがchronydに変更になっておりますので、必要であればその設定も施します。(今回は割愛します。)

■Apacheをインストールしよう

Apacheをインストールしていきます。
CentOS7まででは、パッケージ管理のコマンドとしてyumが使われていましたが、
8からはyumに代わってdnfが使われるようになりました。
基本的なオプション等はyumと変わりませんので、細かい部分は置いておいて、そのままインストールしていきます。
(ちなみに、yumコマンドも使えます。というのも、yumはそのままdnfへのシンボリックリンクになっているんですね)

では、インストールしていきます。
その前に今回は、インストール済みのパッケージはアップデートしておきます。

dnf update

CentOS8でも7までと同様に、Apacheはhttpdというパッケージ名で管理されています。

httpd関連のパッケージを調べてみます。

dnf search httpd

いくつかのパッケージが見つかりますね。
今回はとりあえず、基本的なhttpdと関連パッケージをインストールしておきます。

dnf install httpd httpd-devel httpd-tools httpd-manual

(余談ですが、yumを使う際はサブコマンドもtab補完の対象だったのですが、dnfのサブコマンドは保管されませんね…)

インストールが済んだらsystemctlコマンドでサービスを立ち上げましょう。

systemctl enable httpd
systemctl start httpd
systemctl status httpd

active(running)になっていればOKです。

では、まずはCentOSのローカル上からアクセスしてみましょう。
今回はテストページが表示できるところまで確認できればよいので、

/var/www/html/index.html

を適当に作成しておきます。
GUIのfirefoxからlocalhostを表示してみます。

無事表示されましたね!

■公開しよう

では、今度はこれを外部(VMを立ち上げているWindows)から参照できるよう、httpポートを開放していきましょう。

CentOS8ではこれまでのfirewalldと、そのバックエンドとしてiptablesに代わりnftablesが採用されています。
firewallの設定コマンドはfirewall-cmdでCentOS7までと変わりません。デフォルトで一部のサービス以外は弾くように設定されていますので、httpd関連以外は変更する必要はありません。

http用に80番ポートをオープンします。

firewall-cmd –add-port=80/tcp –zone=public –permanent

(–permanentは恒久的な設定で、OSを再起動したあとも有効になります。今回は念の為つけておきます。)
追加されたことを確認しましょう。

firewall-cmd –list-services –zone=public –permanent


設定を再読み込みさせて…

firewall-cmd –reload

完了です。
バックエンドで動作するnftables側でも認識されているはずなので、それも確認しておきます。

nft list table inet firewalld | grep http


今回はnftablesの話は割愛しますが、firewall-cmdで設定した内容が反映されています。
これでサーバ側の設定は完了です。

では、Windows側からアクセスしてみましょう。

CentOS側で確認したものと同じページが確認できました。


■まとめ

CentOS8でも、基本的な部分は変わりません。
今回はApacheだけでしたので特に問題はありませんでしたが、
MySQLやPHPなども導入しようとする場合は
それぞれのバージョンの変化にも気を使う必要があります。
次回は、MySQLとPHPも含めたLAMP環境の構築をやってみようと思います。

  • このエントリーをはてなブックマークに追加

PAGE TOP