Apache HTTP サーバー
Apache Software Foundation によって開発されたオープンソースの Web サーバーである Apache HTTP サーバー。 Apache サーバーは、Web コンテンツをホストするために使用されます。 Internet Explorer や Firefox などの Web ブラウザーからのコンテンツの要求に応答します。
注意 :この投稿では、RHEL/CentOS 7 ディストリビューションを使用して、Apache サーバーをインストールおよび構成します。 start/stop/install コマンドは異なる場合がありますが、構成手順はすべての Linux ディストリビューションで同じです。Apache のインストール
システムを Web サーバーとして構成するには、まず httpd ソフトウェア パッケージをインストールします。
# yum install httpd
systemctl ユーティリティを使用して、起動時に HTTP デーモンを起動し、デーモンをすぐに起動できるようにします。
# systemctl enable httpd Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service. # systemctl start httpd
構成ファイル
Apache の主な設定ファイルは /etc/httpd/conf/httpd.conf です .補助ディレクトリ /etc/httpd/conf.d 、メイン構成ファイルに含まれる構成ファイルを格納するためにも存在します。モジュールをロードする設定ファイルは /etc/httpd/conf.modules.d にあります ディレクトリ。
CentOS / RHEL 7 の新しい apachectl サブコマンド
CentOS / RHEL 7 では、新しい apachectl サブコマンドを使用できます。次の例では、configtest を使用しています。 可能性のあるエラーの構成をチェックするサブコマンド。
# apachectl configtest
優雅な サブコマンドを使用して、アクティブなリクエストに影響を与えずに構成をリロードします。
# apachectl graceful
Apache の構成
Apache の主な設定ファイルは /etc/httpd/conf/httpd.conf です . Apache はインストールされた状態で実行されますが、このファイルの構成ディレクティブを変更して、環境に合わせて Apache をカスタマイズできます。これらのディレクティブのいくつかは、以下の投稿で説明されています。
Apache HTTP サーバー – 最も一般的に使用される構成ディレクティブApache HTTP サーバーのテスト
下の図に示すように、ローカル システムのブラウザで http://localhost を指定すると、Apache が動作していることを確認できます。ブラウザで http:// に続いて、サーバーの IP パブリック アドレスまたは ServerName を指定することもできます。 構成ファイルで指定したディレクティブ。以下に示すテスト ページは、機能している Apache HTTP サーバーを確認します。
実際のコンテンツの表示をテストするには、DocumentRoot ディレクティブで指定されたディレクトリに index.html という名前の HTML ファイルを作成します (デフォルトのディレクトリは /var/www/html です)。 )。 Apache は、このディレクトリに index.html ファイルが存在する場合、自動的に表示します。
Apache コンテナ
Apache コンテナーは、他のディレクティブをグループ化する特別な構成ディレクティブです。コンテナーは XML スタイルのタグを使用します。つまり、コンテナーの開始は
Apache 仮想ホスト
Apache は仮想ホストをサポートしています。つまり、単一の Apache サーバーが、複数の IP アドレスまたはホスト名に向けられた要求に応答できます。各仮想ホストはコンテンツを提供し、異なる構成を行うことができます。
仮想ホストは次の 2 つの方法で構成できます。
1. IP ベースの仮想ホスト (IP ごとのホスト)
2.名前ベースの仮想ホスト (ホストごと)
IP ごとのホスト
ホストバイ IP では、各仮想ホストに独自の IP アドレスとポートの組み合わせがあります。 Apache Web サーバーは、ホストが解決する IP アドレスに応答します。 Secure Sockets Layer (SSL) プロトコルの制限により、HTTPS リクエストを処理するには Host-by-IP が必要です。
ホスト別
ホストバイネームでは、すべての仮想ホストが共通の IP アドレスを共有します。 Apache は、リクエスト内のホスト名を ServerName にマッピングすることで、リクエストに応答します。 および ServerAlias 特定の仮想ホストの構成ファイル内のディレクティブ。
次の例は、単純な名前ベースの仮想ホスト構成です:
<VirtualHost *:80> ServerName example1.com ServerAlias www.example1.com DocumentRoot /var/www/example1 ErrorLog example1.error_log </VirtualHost> <VirtualHost *:80> ServerName example2.com ServerAlias www.example2.com DocumentRoot /var/www/example2 ErrorLog example2.error_log </VirtualHost>