CentOS 7 は既にサポートが終了しています。このページは新規構築を推奨するものではなく、過去環境の保守、移行前調査、設定の読み解きに使うためのレガシー Linux 手順です。新規構築では、現在サポートされている Linux ディストリビューションを利用してください。
CentOS 7 で Apache httpd を導入し、基本的な Web サーバーとして動かすための手順です。新規構築の推奨ではなく、CentOS 7 の既存環境を読み解くための基本設定として整理します。
Apache は設定項目が多いですが、最初に見るべきポイントは、パッケージ、ServerName、公開ディレクトリ、不要な welcome ページ、PHP、サービス起動です。細かいチューニングより先に、どの設定ファイルが何を担っているかを見える状態にします。
インストールする
yum install httpd mod_ssl php php-mbstring php-xml php-mysqlndhttpd.conf の基本項目を確認する
httpd.conf は長大なファイルなので、手順記事では丸ごと置き換えません。バックアップを取ったうえで、該当項目を確認して反映します。
cp -a /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.bakServerAdmin webmaster@mydomain.com
ServerName host01.mydomain.com:80
AddDefaultCharset Off
ServerTokens Prod
ServerSignature Off公開ディレクトリの扱いを確認する
既存環境では /var/www/html をそのまま使っている場合も、VirtualHost で分けている場合もあります。どちらにしても、DocumentRoot、Directory ディレクティブ、AllowOverride の扱いを確認します。
<Directory "/var/www/html">
Options None
AllowOverride None
Require all granted
</Directory>welcome ページを削除する
rm -f /etc/httpd/conf.d/welcome.confPHP の基本設定を分けて置く
PHP の個別設定は /etc/php.d 配下に小さなファイルとして置くと、後から確認しやすくなります。
cat > /etc/php.d/date.timezone.ini <<'EOF'
date.timezone = "Asia/Tokyo"
EOF
cat > /etc/php.d/upload_max_filesize.ini <<'EOF'
upload_max_filesize = 20M
EOFApache を起動する
systemctl enable httpd
systemctl start httpd
systemctl status httpd疎通を確認する
curl -I http://localhost/
curl -I http://host01.mydomain.com/確認するポイント
- ServerName が未設定のままになっていないか。
- welcome.conf が意図せず表示されていないか。
- AllowOverride を有効にする必要が本当にあるか。
- PHP を使う場合、アプリケーション要件と PHP バージョンが一致しているか。
- 外部公開する場合、firewalld や上位ファイアウォールの許可範囲を確認しているか。
まとめ
CentOS 7 の Apache 基本設定では、まず httpd がどの設定ファイルを読み、どの DocumentRoot を公開し、どのサービス状態で動いているかを整理します。古い環境ほど、設定変更そのものより、既存設定の責任範囲を崩さず読み解くことが重要です。
関連する記事
- CentOS 7 サーバー管理ガイド
CentOS 7 系の記事をまとめたハブページです。 - CentOS 7 ネットワーク設定 – network サービスと ifcfg の既存運用
Web / DNS サーバーの前提になる固定 IP や ifcfg 設定を確認します。 - CentOS 7 Apache TLS 設定 – 自己署名証明書で HTTPS 化する
内部向け HTTPS 化の設定です。 - CentOS 7 Apache TLS 設定 – Let’s Encrypt で HTTPS 化する
公開サイト向け HTTPS 化の設定です。
参考書籍
書籍
Apache HTTP Server の設定、ディレクティブ、モジュール、運用項目を確認したい場合の参考書籍です。古い 2.0 / 2.2 系対応書籍のため、価格や在庫、現在の Apache 2.4 との差分はリンク先や公式ドキュメントで確認してください。
Amazon で見るこのリンクは Amazon アソシエイトリンクです。

