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へのシンボリックリンクになっているんですね)
では、インストールしていきます。
その前に今回は、インストール済みのパッケージはアップデートしておきます。
CentOS8でも7までと同様に、Apacheはhttpdというパッケージ名で管理されています。
httpd関連のパッケージを調べてみます。
いくつかのパッケージが見つかりますね。
今回はとりあえず、基本的なhttpdと関連パッケージをインストールしておきます。
(余談ですが、yumを使う際はサブコマンドもtab補完の対象だったのですが、dnfのサブコマンドは保管されませんね…)
インストールが済んだらsystemctlコマンドでサービスを立ち上げましょう。
systemctl start httpd
systemctl status httpd
active(running)になっていればOKです。
では、まずはCentOSのローカル上からアクセスしてみましょう。
今回はテストページが表示できるところまで確認できればよいので、
を適当に作成しておきます。
GUIのfirefoxからlocalhostを表示してみます。
無事表示されましたね!
■公開しよう
では、今度はこれを外部(VMを立ち上げているWindows)から参照できるよう、httpのポートを開放していきましょう。
CentOS8ではこれまでのfirewalldと、そのバックエンドとしてiptablesに代わりnftablesが採用されています。
firewallの設定コマンドはfirewall-cmdでCentOS7までと変わりません。デフォルトで一部のサービス以外は弾くように設定されていますので、httpd関連以外は変更する必要はありません。
http用に80番ポートをオープンします。
(–permanentは恒久的な設定で、OSを再起動したあとも有効になります。今回は念の為つけておきます。)
追加されたことを確認しましょう。
完了です。
バックエンドで動作するnftables側でも認識されているはずなので、それも確認しておきます。
今回はnftablesの話は割愛しますが、firewall-cmdで設定した内容が反映されています。
これでサーバ側の設定は完了です。
では、Windows側からアクセスしてみましょう。
CentOS側で確認したものと同じページが確認できました。
■まとめ
CentOS8でも、基本的な部分は変わりません。
今回はApacheだけでしたので特に問題はありませんでしたが、
MySQLやPHPなども導入しようとする場合は
それぞれのバージョンの変化にも気を使う必要があります。
次回は、MySQLとPHPも含めたLAMP環境の構築をやってみようと思います。