1月17日木曜日: require命令
Syntax: require entity-name entity entity...
Context: directory, .htaccess
Override: AuthConfig
Status: core
この命令は、認証されたユーザがあるディレクトリにアクセスできるかどうかを選択します。許可されたsyntaxesは:
require user userid userid ...
指定されたユーザだけがディレクトリにアクセスできます。
require group group-name group-name ...
指定されたグループのユーザだけがディレクトリにアクセスできます。
require valid-user
全ての正当なユーザがディレクトリにアクセスできます。
もしrequireが<Limit>セクションに存在するとき指定された方法でのアクセスを制限します。<Limit>になければ全ての方法に対するアクセスを制限します。例:
AuthType Basic
AuthName somedomain
AuthUserFile /web/users
AuthGroupFile /web/groups
<Limit GET POST>
require group admin
</Limit>
Requireは正確に動作させるために(ユーザーやグループを定義するために)はAuthNameやAuthType、AuthUserFileやAuthGroupFileのような命令を伴わなければなりません。
Context: directory, .htaccess
Override: AuthConfig
Status: core
この命令は、認証されたユーザがあるディレクトリにアクセスできるかどうかを選択します。許可されたsyntaxesは:
require user userid userid ...
指定されたユーザだけがディレクトリにアクセスできます。
require group group-name group-name ...
指定されたグループのユーザだけがディレクトリにアクセスできます。
require valid-user
全ての正当なユーザがディレクトリにアクセスできます。
もしrequireが<Limit>セクションに存在するとき指定された方法でのアクセスを制限します。<Limit>になければ全ての方法に対するアクセスを制限します。例:
AuthType Basic
AuthName somedomain
AuthUserFile /web/users
AuthGroupFile /web/groups
<Limit GET POST>
require group admin
</Limit>
Requireは正確に動作させるために(ユーザーやグループを定義するために)はAuthNameやAuthType、AuthUserFileやAuthGroupFileのような命令を伴わなければなりません。
1月17日木曜日: Port命令
Syntax: Port number
Default: Port 80
Context: server config
Status: core
Port命令はサーバが起動するときのネットワークポート番号を設定します。 numberは0から65535までです。いくつかのポート番号は(特に1024以下)特別なプロトコルのために使用されます。ポート番号が定義されているリストである/etc/servicesを参照してください。httpdプロトコルのための標準ポート番号は80です。
Port命令は二つの運動を持っており、一つはNCSA後方互換性に必要なものです(そしてApacheのプロセスの実行時情報で混乱します)。
なんらかのListenやBindAddressの命令がポート番号を特定することなしで、Port命令はサーバが聞いてくるネットワークポートを設定します。:numberを特定するようなListenかあるいはBindAddress命令があると、Portはサーバが聞いてくるのがどんなアドレスかに影響しません。
Port命令はSERVER_PORT環境変数(CGI and SSIに関する)を設定し、サーバがそれ自身に関係するURLを生じなければならないときに使われます(例えば、それ自身に対する外部リダイレクトを作るとき)。
なにも起こらなければ、Port設定はVirtualHostが反応するのがどんなポートかに影響します。VirtualHost命令自身はそのために使われます
ポートのプライマリの動作はServerName命令と似ていると考えるべきです。ServerNameとPortは一緒にサーバのcanonicalアドレスになるようなどうしたら良いかを指定します。
ポート番号80はUnixの特定のポートの1つです。1024以下のポート番号はすべてシステムが使用するために確保されています。例えば、通常(non-root)のユーザはそれらを使用する事が出来ません。;代わりに彼らはそれ以上のポート番号を使用することが出来ますポート番号80を使用するためには、ルートでサーバを起動しなければなりません。ポートにバインドした後とリスエストを受ける前に、ApacheはUser命令によって設定されたより低い権限を持ったユーザに変更します。
もしポート番号80を使用することが出来ないなら、使用されていない他のポート番号を選んでください。 Non-rootユーザは1023より大きいポート番号を選択しなければなりません。例えば8000のような。
SECURITY: もしrootでサーバを起動するならば、Userをrootに設定していないことを確認してください。接続をハンドリングしている間にrootでサーバを起動するなら、サイトはありがちなセキュリティー攻撃に対してオープンであるかもしれません。
Default: Port 80
Context: server config
Status: core
Port命令はサーバが起動するときのネットワークポート番号を設定します。 numberは0から65535までです。いくつかのポート番号は(特に1024以下)特別なプロトコルのために使用されます。ポート番号が定義されているリストである/etc/servicesを参照してください。httpdプロトコルのための標準ポート番号は80です。
Port命令は二つの運動を持っており、一つはNCSA後方互換性に必要なものです(そしてApacheのプロセスの実行時情報で混乱します)。
なんらかのListenやBindAddressの命令がポート番号を特定することなしで、Port命令はサーバが聞いてくるネットワークポートを設定します。:numberを特定するようなListenかあるいはBindAddress命令があると、Portはサーバが聞いてくるのがどんなアドレスかに影響しません。
Port命令はSERVER_PORT環境変数(CGI and SSIに関する)を設定し、サーバがそれ自身に関係するURLを生じなければならないときに使われます(例えば、それ自身に対する外部リダイレクトを作るとき)。
なにも起こらなければ、Port設定はVirtualHostが反応するのがどんなポートかに影響します。VirtualHost命令自身はそのために使われます
ポートのプライマリの動作はServerName命令と似ていると考えるべきです。ServerNameとPortは一緒にサーバのcanonicalアドレスになるようなどうしたら良いかを指定します。
ポート番号80はUnixの特定のポートの1つです。1024以下のポート番号はすべてシステムが使用するために確保されています。例えば、通常(non-root)のユーザはそれらを使用する事が出来ません。;代わりに彼らはそれ以上のポート番号を使用することが出来ますポート番号80を使用するためには、ルートでサーバを起動しなければなりません。ポートにバインドした後とリスエストを受ける前に、ApacheはUser命令によって設定されたより低い権限を持ったユーザに変更します。
もしポート番号80を使用することが出来ないなら、使用されていない他のポート番号を選んでください。 Non-rootユーザは1023より大きいポート番号を選択しなければなりません。例えば8000のような。
SECURITY: もしrootでサーバを起動するならば、Userをrootに設定していないことを確認してください。接続をハンドリングしている間にrootでサーバを起動するなら、サイトはありがちなセキュリティー攻撃に対してオープンであるかもしれません。
1月17日木曜日: PidFile命令
Syntax: PidFile filename
Default: PidFile logs/httpd.pid
Context: server config
Status: core
PidFile 命令はデーモンのプロセスidをサーバが記録するファイルを設定します。もしファイルネームがスラッシュ(/)で始まっていなければ、ServerRootが親ディレクトリであると仮定されます。PidFileはstandaloneモードでのみ使用されます。
サーバにシグナルを送るためにしばしば使われ、サーバが閉じていると、ErrorLogとTransferLogを再び開き、configuration ファイルを再び読み込みます。これはPidFileにリストされた プロセスidにSIGHUP(kill -1) シグナルを送ることで実行されます。
PidFileはログファイル配置とセキュリティについての警告の支配を受けています。
Default: PidFile logs/httpd.pid
Context: server config
Status: core
PidFile 命令はデーモンのプロセスidをサーバが記録するファイルを設定します。もしファイルネームがスラッシュ(/)で始まっていなければ、ServerRootが親ディレクトリであると仮定されます。PidFileはstandaloneモードでのみ使用されます。
サーバにシグナルを送るためにしばしば使われ、サーバが閉じていると、ErrorLogとTransferLogを再び開き、configuration ファイルを再び読み込みます。これはPidFileにリストされた プロセスidにSIGHUP(kill -1) シグナルを送ることで実行されます。
PidFileはログファイル配置とセキュリティについての警告の支配を受けています。
1月16日水曜日: Options命令
Syntax: Options [+|-]option [+|-]option ...
Context: server config, virtual host, directory, .htaccess
Override: Options
Status: core
Options命令はサーバ制御を特定のディレクトリ内でのみ有効にする命令です。
optionがNoneに設定されている場合は、特別な制御は使用不可であるかあるいは、次のような場合があります。
All
MultiViewsを除いた全てのものが利用可能です。
ExecCGI
CGIの実行が認められます。
FollowSymLinks
サーバはこのディレクトリにシンボリックリンクを許可します。 注: サーバはシムリンクに従いますが、<Directory>セクションに対して一致するように使われるパス名は変えません。
Includes
サーバ側インクルード機能を許可します。
IncludesNOEXEC
サーバ側インクルード機能を許可しますが、#exeコマンドとCGIスクリプトの#include は含みません。
Indexes
もしディレクトリにマップしているURLがリクエストされ、そのディレクトリに DirectoryIndex(例:index.html)がない場合には、サーバがそのディレクトリ以下のファイルを表示することを許可します。
MultiViews
Content negotiated MultiViewsを許可します。
SymLinksIfOwnerMatch
サーバは、対象とするファイルとディレクトリがリンクしているとき同様のユーザIDに従ってシンボリックリンクを許可します。
通常、もし複数の Option があるディレクトリに対して適用された時、大抵特定の一つが実行されます。;option は2つ以上を実行することができません。しかし、もしOptions命令のallに + か - の記号がallの前に書かれている場合は、option はマージされます。+ が書かれたoptionは一般に、有効にoptions に加えられ、- が書かれたoption は効果のあるoption から除外されます。
例えば, + と - の記号なしでは:
<Directory /web/docs>
Options Indexes FollowSymLinks
</Directory>
<Directory /web/docs/spec>
Options Includes
</Directory>
上記は Includes だけが /web/docs/spec ディレクトリに設定される。Options命令が + と - の記号を使っていれば、:
<Directory /web/docs>
Options Indexes FollowSymLinks
</Directory>
<Directory /web/docs/spec>
Options +Includes -Indexes
</Directory>
これによってFollowSymLinks と Includes が /web/docs/spec ディレクトリに設定されます。
Context: server config, virtual host, directory, .htaccess
Override: Options
Status: core
Options命令はサーバ制御を特定のディレクトリ内でのみ有効にする命令です。
optionがNoneに設定されている場合は、特別な制御は使用不可であるかあるいは、次のような場合があります。
All
MultiViewsを除いた全てのものが利用可能です。
ExecCGI
CGIの実行が認められます。
FollowSymLinks
サーバはこのディレクトリにシンボリックリンクを許可します。 注: サーバはシムリンクに従いますが、<Directory>セクションに対して一致するように使われるパス名は変えません。
Includes
サーバ側インクルード機能を許可します。
IncludesNOEXEC
サーバ側インクルード機能を許可しますが、#exeコマンドとCGIスクリプトの#include は含みません。
Indexes
もしディレクトリにマップしているURLがリクエストされ、そのディレクトリに DirectoryIndex(例:index.html)がない場合には、サーバがそのディレクトリ以下のファイルを表示することを許可します。
MultiViews
Content negotiated MultiViewsを許可します。
SymLinksIfOwnerMatch
サーバは、対象とするファイルとディレクトリがリンクしているとき同様のユーザIDに従ってシンボリックリンクを許可します。
通常、もし複数の Option があるディレクトリに対して適用された時、大抵特定の一つが実行されます。;option は2つ以上を実行することができません。しかし、もしOptions命令のallに + か - の記号がallの前に書かれている場合は、option はマージされます。+ が書かれたoptionは一般に、有効にoptions に加えられ、- が書かれたoption は効果のあるoption から除外されます。
例えば, + と - の記号なしでは:
<Directory /web/docs>
Options Indexes FollowSymLinks
</Directory>
<Directory /web/docs/spec>
Options Includes
</Directory>
上記は Includes だけが /web/docs/spec ディレクトリに設定される。Options命令が + と - の記号を使っていれば、:
<Directory /web/docs>
Options Indexes FollowSymLinks
</Directory>
<Directory /web/docs/spec>
Options +Includes -Indexes
</Directory>
これによってFollowSymLinks と Includes が /web/docs/spec ディレクトリに設定されます。
1月16日水曜日: NameVirtualHost directive
Syntax: NameVirtualHost addr[:port]
Context: server config
Status: core
Compatibility: NameVirtualHost is only available in Apache 1.3 and later
NameVirtualHost命令はname-based virtual hostsをコンフィギュアしたいのなら必要とされる命令です。
addrはホスト名ですが、いつも使うIPアドレスが推奨されます。例えば
NameVirtualHost 111.22.33.44
name-basedのバーチャルホスト名が決定するアドレスをNameVirtualHostが指定し、もし複数のアドレスに複数のname-basedホストを持っていれば、それぞれのアドレスに命令を繰り返します。
任意にname-basedのバーチャルホストが使われるべきポート番号を指定することができます。例えば
NameVirtualHost 111.22.33.44:8080
Context: server config
Status: core
Compatibility: NameVirtualHost is only available in Apache 1.3 and later
NameVirtualHost命令はname-based virtual hostsをコンフィギュアしたいのなら必要とされる命令です。
addrはホスト名ですが、いつも使うIPアドレスが推奨されます。例えば
NameVirtualHost 111.22.33.44
name-basedのバーチャルホスト名が決定するアドレスをNameVirtualHostが指定し、もし複数のアドレスに複数のname-basedホストを持っていれば、それぞれのアドレスに命令を繰り返します。
任意にname-basedのバーチャルホストが使われるべきポート番号を指定することができます。例えば
NameVirtualHost 111.22.33.44:8080
1月16日水曜日: MinSpareServers directive
Syntax: MinSpareServers number
Default: MinSpareServers 5
Context: server config
Status: core
MinSpareServers命令はidle子サーバプロセスの最少値を設定します。 idle プロセスはリクエストを処理しないものの一つです。もし MinSpareServers の idle よりも少ない場合には、上位の処理が、一秒ごとの最大速度で新しい下位の処理を実行します。
このパラメータの設定は非常に混雑したサイトにのみ実行すべきです。このパラメータの数を大きく設定することはあまり良いアイデアとはいえません。
MaxSpareServersとStartServersを参照してください。
Default: MinSpareServers 5
Context: server config
Status: core
MinSpareServers命令はidle子サーバプロセスの最少値を設定します。 idle プロセスはリクエストを処理しないものの一つです。もし MinSpareServers の idle よりも少ない場合には、上位の処理が、一秒ごとの最大速度で新しい下位の処理を実行します。
このパラメータの設定は非常に混雑したサイトにのみ実行すべきです。このパラメータの数を大きく設定することはあまり良いアイデアとはいえません。
MaxSpareServersとStartServersを参照してください。
1月16日水曜日: MaxSpareServers命令
Syntax: MaxSpareServers number
Default: MaxSpareServers 10
Context: server config
Status: core
MaxSpareServers命令はidleの子サーバプロセスの最大数を設定します。idleプロセスはリクエストを処理しないものの一つです。もし MaxSpareServers の idleよりも多い場合には、親プロセスは、過剰な処理を停止するでしょう。
このパラメータの設定は非常に混雑したサイトにのみ実行すべきです。このパラメータの数を大きく設定することはあまり良いアイデアとはいえません。
MinSpareServersとStartServersを参照してください。
Default: MaxSpareServers 10
Context: server config
Status: core
MaxSpareServers命令はidleの子サーバプロセスの最大数を設定します。idleプロセスはリクエストを処理しないものの一つです。もし MaxSpareServers の idleよりも多い場合には、親プロセスは、過剰な処理を停止するでしょう。
このパラメータの設定は非常に混雑したサイトにのみ実行すべきです。このパラメータの数を大きく設定することはあまり良いアイデアとはいえません。
MinSpareServersとStartServersを参照してください。
1月11日金曜日: MaxRequestsPerChild命令
Syntax: MaxRequestsPerChild number
Default: MaxRequestsPerChild 0
Context: server config
Status: core
MaxRequestsPerChild命令は個々の子サーバプロセスが取り扱うリクエストの範囲を設定する。MaxRequestPerChild が設定されると、その子プロセスは停止します。もしMaxRequestsPerChild が0だと、そのプロセスは停止しません。
MaxRequestsPerChild を0以外に設定すると、2つの有益な効果があります:
(偶発的な)メモリー漏れによって処理が消費するメモリーの量を制限します;
処理に時間制限を与えることによって、サーバの load が少ない時に、処理数を減らすのを助けます。
Default: MaxRequestsPerChild 0
Context: server config
Status: core
MaxRequestsPerChild命令は個々の子サーバプロセスが取り扱うリクエストの範囲を設定する。MaxRequestPerChild が設定されると、その子プロセスは停止します。もしMaxRequestsPerChild が0だと、そのプロセスは停止しません。
MaxRequestsPerChild を0以外に設定すると、2つの有益な効果があります:
(偶発的な)メモリー漏れによって処理が消費するメモリーの量を制限します;
処理に時間制限を与えることによって、サーバの load が少ない時に、処理数を減らすのを助けます。
1月11日金曜日: MaxKeepAliveRequests directive
Syntax: MaxKeepAliveRequests number
Default: MaxKeepAliveRequests 100
Context: server config
Status: core
Compatibility: Only available in Apache 1.2 and later.
MaxKeepAliveRequests命令はKeepAliveがonの時接続毎に許可されたリクエスト数を制限します。 もし"0"にセットされると、無制限のリクエストが許可されるでしょう。サーバの機能を最大にするには、この設定を推奨します。
Default: MaxKeepAliveRequests 100
Context: server config
Status: core
Compatibility: Only available in Apache 1.2 and later.
MaxKeepAliveRequests命令はKeepAliveがonの時接続毎に許可されたリクエスト数を制限します。 もし"0"にセットされると、無制限のリクエストが許可されるでしょう。サーバの機能を最大にするには、この設定を推奨します。
1月11日金曜日: MaxClients命令
Syntax: MaxClients number
Default: MaxClients 256
Context: server config
Status: core
MaxClients命令は同時にリクエスト数の限度数を設定します;作成される子サーバプロセスの数以下です。
Default: MaxClients 256
Context: server config
Status: core
MaxClients命令は同時にリクエスト数の限度数を設定します;作成される子サーバプロセスの数以下です。