Apache/ja

Apache HTTPサーバは、効率的で拡張可能なウェブサーバーで、インターネット上で最も人気のあるもののひとつです.

Emerge
If you want to use the Apache event MPM, then add the following to make.conf:

If you want to use the Apache worker MPM, then add the following to make.conf:

And, enable the Apache threads USE flag:

Then emerge Apache:

グローバルなサポート
Enabling the  global USE flag provides support for Apache in other packages. This may cause to be installed automatically if a package depending on Apache has been emerged.

USEフラグを設定した後には、システム全体をアップデートして変更を適用させたいかもしれません:

ファイル
システム上のApache2の動作を設定する、2つの主要なファイルがあります:


 * Gentoo's Apache2 init script configuration file


 * Apache2 server's conventional configuration file

The file located in  is Gentoo's init script configuration file. The only active line in this file is the APACHE2_OPTS variable line:

This line defines options that will be interpreted by the various configuration files using the  statement to activate or deactivate some part of the whole configuration. This will be returned to later in the article.

The file is Apache server's conventional configuration file. In fact this file is only an entry point for configuration. The whole configuration is split in many files in the directory, that are assembled together using the   directive. For example, the statement, in , aims at including all the files in  which name ends with.

上記で見たように、またモジュールの設定ファイル(内のファイル)のほとんどが から開始することから、対応する というフラグがの APACHE2_OPTS 変数に設定されていなければ、内のファイルの内容は有効にはなりません. という設定ファイルは例外で から開始しておらず、そのため常に有効になります.

デフォルト
Apache サーバの新規インストール後には、以下のような、異なる設定ファイル類を集約した設定ができあがっています. その入口である から始めましょう.

稼働の第一歩
上記初期設定にあるように、インストール済みのバーチャルホストの  ディレクトリが  にあり、サーバ名は「localhost」です. にはさらに、index.html ファイルがひとつ生成されていますので、正常にインストールができたかどうかを確認するためには http://localhost/ にブラウザでアクセスしましょう.

そのウェブページには「It works!」のメッセージが表示されているはずです.

mod_securityを有効にする
のインストール:

ファイルの APACHE2_OPTS 変数で モジュールを有効にする:

このモジュールを制御するには、 と ファイルを編集し、Apache を再起動します.

PHP サポートを有効にする
の USE フラグを付けて PHP をインストールし、モジュールを有効にします:

Before testing if the PHP module works, check that the file exists and contains the following definition:

もしこのファイルがないようなら、作りましょう.

PHPモジュールが動作しているか確認するために、テストページを作成:

そして、を削除するかリネームして、テストページを開きましょう:

PHPの設定が記述された表が見られるでしょう.

PHPのバージョンを変更する
To change the version of PHP handled by Apache, first list the available versions for the  Server Application Programming Interface (SAPI):

Change it to the version of choice:

Substitute  in the example above to the requested number in the output of  as displayed earlier on.

バーチャルホスト
それぞれのバーチャルホストごとに、  ディレクトリを用意し Apacheデーモンが見つけられアクセス可能なようにしましょう. ディレクトリ内にバーチャルホスト設定ファイルを追加し、その中には この  とホストサーバ名を指定します. また、このホストサーバ名の項目を に追記することも忘れないでください.

apache ユーザ/グループ の所有者権限を、バーチャルホストのファイル群に割り当てます. 以下の例のように コマンドで:

以下に、2つのバーチャルホスト定義例があります. 1つは domainname1.com で、もう1つは domainname2.com です. 本来のホスト自体（ ）は同じでも、 と  のディレクティブがそれぞれ異なります.

IPアドレスベースのバーチャルホスト定義を行うこともまた推奨されています. 管理者はユーザに対して、IPアドレスを通じてサイトへアクセスさせメッセージを掲げられます.

バーチャルホストを挿入したあとには、新たなウェブサイトを有効にするために、ウェブサーバを（完全に）再起動する必要があります.

fcgid 経由の PHP を有効にする
と をインストール. PHP パッケージには、 USE フラグの設定が必要:

ファイルを編集:

必要なディレクトリの作成:

PHP ラッパーへのシンボリックリンクを張る:

モジュールの有効化:

最後に、Apache を再起動して、すでに作成された サイトを確認します. の値は CGI/FastCGI になるはずです.

Apache 2.4でmod_proxy_fcgiを使ってPHP-FPMを使う
The following pre-requisites must be satisfied to enable PHP-FPM through mod_proxy_fcgi:
 * >= PHP 5.3
 * >= Apache 2.4

Furthermore, there are a few restrictions on the availability of functionality within Apache 2.4:
 * >= Apache 2.4.9, if you want to communicate with PHP-FPM over UNIX sockets
 * >= Apache 2.4.10, if you want to use SetHandler instead of ProxyPassMatch.

The following configuration will only work with Apache 2.4.10 and newer. It relies on the  directive and be placed within the main server config or. The location of the UNIX socket is determined by the  directive in the  configuration file, allowing for specifying separate pools per site or function.

In the following example,  is placed within the PHP module config file of Apache:

Or, you can use ProxPassMatch -- the only option if the Apache version is between 2.4.0 and 2.4.8, inclusive.

By default the  directive is not set to a socket. First create the directory for the socket file:

Next, update the file as follows:

Then enable both the  and   modules:

OpenRC
Apache サーバを起動:

Apache を default ランレベルに追加:

Apache サービスを再起動:

Apache の設定ファイルの再読込:

systemd
Apache サーバを起動:

Apache を default ランレベルに追加:

Apache サービスを再起動:

資料
The Apache server can be difficult to configure properly. Below are some resources that may be helpful when issues occur:


 * トラブルシューティングガイド

Testing
Verifying IP interfaces and ports on which Apache2 is running on and listening to:

Testing if a connection to a Apache server is working on localhost:

Interrupt the connection test with + and.

apr_sockaddr_info_get failed for 
Error:

apache2: apr_sockaddr_info_get failed for System_Hostname

Resolution:

When this occurs, add the host name to the file:

参考

 * Lighttpd - 高速軽量ウェブサーバ
 * Nginx - 小型で強靭、高性能なHTTPサーバ兼リバースプロキシ

外部の情報

 * Slicehostの記事: Installing Apache on Gentoo
 * Slicehostの記事: Apache configuration files on Gentoo
 * Slicehostの記事: Configuring the Apache MPM on Gentoo
 * Slicehostの記事: Apache configuration on Gentoo
 * Slicehostの記事: Apache Virtual Hosts on Gentoo
 * Slicehostの記事: Enabling and using apache's mod_status on Gentoo
 * apache.org documentation
 * Apache2 mod_pagespeed