Webサーバーは代表的なインターネットサービスの1つです。中でもApacheは最も広く使われているhttp server用パッケージです。本記事では、基本的なapacheの設定について解説します。
Apache設定
「Apache」とはApache HTTPサーバーのことを指し、Apache Software Fundationによって開発されているオープンソースのクロスプラットフォームです。
「Apache」はバージョン1からアップグレードされたバージョン2が広く使われています。現在では下記に示すように世界で34%ほど (2021年5月) のシェアを誇っておりNginxと人気を二分するほどです。今回は最新バージョン2.4の使用方法を解説します。
WEBプログラム | 特徴 |
---|---|
Apache (シェア33.8%) | ・全ての動作を平均的にこなす ・動的ファイルの処理に向いている ・技術情報が豊富 |
Nginx (シェア33.8%) | ・同時接続に強いWEBアプリ ・レスポンスが早い ・静的ファイルの処理に向いている ・技術情報が少ない |
最新情報は以下の「ApacheのHTTP SERVER PROJECT」をご参照ください。
Apache2は非常に多機能なサーバーソフトです。その都度、必要な機能だけを組み込めるようにライブラリ(拡張できるモジュール)がいくつか用意されています。
設定ファイルの構成
apache2の確認は「apache2 -v」コマンドを使います。
$apache2 -v
Server version: Apache/2.4.29 (Ubuntu)
Server built: 2022-06-23T12:51:37
Apacheディレクトリ構造
apacheの設定を行うために、Ubuntu server内の設定ファイルの変更が必要になります。ここでは、Apacheの主なディレクトリやファイルのディフォルト配置を示します。
トップページ | /var/www/html |
アクセスログ エラーログ | /var/log/apache2/access.log /var/log/apache2/error.log |
設定ファイル | /etc/apache2/apache2.conf |
次に、設定ファイルについて詳しく解説していきます。
apacheのログファイル
apacheのログフィあるは、「/etc/log/apache2/」内にあります。
apacheの設定ファイル
Apache HTTP serverでは、「/etc/apache2」ディレクトリにあります。以下コマンドで確認する事が出来ます。
$tree /etc/apache2
(* tree コマンドがなければ、「apt-get install tree」にてインストール下さい。)
関連ファイルが非常に多いので、ここではすべてを示すことは割愛しますが、主に以下に示す設定ファイルがあります。
・apache2.conf
apache2のメインの設定ファイル
・conf-available/
各種Webアプリケーションなどの設定ファイルを配置するディレクトリ
・conf-enabled/
上の設定で実際に使用するものを配置する。
・magic
mod_mime_magicのための設定ファイル。README.etcファイルで「このファイルを触る必要はたぶんない」
・mods-available/
.load(モジュールをロードするために必要な設定が記載されたファイル)や .conf(モジュールを利用するために必要な設定が記載されたファイル)を 保存するディレクトリ. モジュールがインストールさ際にここに書き込まれる。
・mods-enabled/
上の設定で実際に使用するものを配置する。
・ports.conf
どのポートやアドレスでLISTENするかを指定するファイルです。規定値はポート80番を利用しています。
・sites-available/
バーチャルホストに関する設定ファイルを保存するディレクトリ
CGIなどの許可をここで取り付ける。
・sites-enabled/
上の設定で実際に使用するものを配置する。
・envvars
この中にhttpdが起動する前に設定される環境変数
・/var/log/apache2/access.log
クライアントからのアクセスを記録する「アクセスログ」ファイル。デフォルトのアクセスログは「sites-enabled/000-default.conf」に定義されています。
・/var/log/apache2/error.log
エラーを記録する「エラーログ」ファイル
・/var/www/html
HTMLファイルや画像ファイルなどを配置するディレクトリで「ドキュメントルート」と呼ばれています。web無頼座のアドレスを指定した際、このドキュメントルートがトップページとなるようにアクセスします。
設定の書き換え処理
・conf-available/[コンフィグレーション].conf を書き換え後、設定を反映させるコマンド
$a2enconf [コンフィグレーション].conf
・sites-available/[コンフィグレーション].conf を書き換え後、設定を反映させるコマンド
$a2ensite [コンフィグレーション].conf
・mods-available/[コンフィグレーション].conf を書き換え後、設定を反映させるコマンド
$a2enmod [コンフィグレーション].conf
・一括設定の場合はサーバーが一時止まるが、再リロードしても良い。
$systemctl reload apache2
まとめ
✔ Apache HTTP serverでは、「/etc/apache2」ディレクトリに、設定ファイルがあります。
・本記事では、apache2のディレクトリ構造について解説しました。
・apache2の各種設定ファイル(configファイル)の設定について解説しました。