Wyvern の設定は、
wyvern.confファイルに記述して行います。
デフォルトでは、
/usr/local/wyvern/conf/wyvern.conf
にインストールされています。
configure コマンドに --prefix を
指定した場合は、
$(prefix)/conf/wyvern.conf
にインストールされています。
ウェブサーバの運用に必要な基本項目は次の表のとおりです。
パラメータ | デフォルト値 | パラメータの説明 |
---|---|---|
Port | 80 | サーバがサービスを受け付けるポート番号 |
SecurePort | 443 | Secure Socket Layer (SSL) を利用した場合に、 サーバがサービスを受け付ける安全なポート番号 |
MaxRequest | 8 | クライアントの接続要求の最大値 要求が多い場合は値を大きくすると良いでしょう |
Timeout | 30 | クライアント接続後の要求と応答に関するタイムアウトの最大値(秒) |
User | nobody | サーバを実行するユーザ名 |
Group | nogroup | サーバを実行するグループ名 |
PidFile | logs/wyvern.pid | サーバのプロセス番号を保存するファイルパス。 '/' で始まる場合は絶対パスとみなされ、 それ以外は、 ServerRoot からの相対パスとなる。 |
ServerRoot | /usr/local/wyvern | サーバの実行ルートディレクトリ。設定ファイル(wyvern.conf)や、 各種ログファイルなどを置く起点ディレクトリ。 |
ErrorLog | logs/error_log | サーバのエラーログのパス。 '/' で始まる場合は絶対パスとみなされ、 それ以外は、 ServerRoot からの相対パスとなる。 |
AccessLog | logs/access_log | サーバへのアクセスログのパス。 '/' で始まる場合は絶対パスとみなされ、 それ以外は、 ServerRoot からの相対パスとなる。 |
ServerAdmin | user@your.domain.here |
サーバ管理者の電子メールアドレス 可能な限り configure 時に自動的に設定される |
ServerName | host.your.domain.here |
クライアントに返すサーバのホスト名 可能な限り configure 時に自動的に設定される |
DocumentRoot | /usr/local/wyvern/htdocs | サーバホストのパブリックな HTML 文書などを置く トップディレクトリの絶対パス |
UserDir | public_html | ユーザ個人の HTML 文書用の ディレクトリ名。 ユーザのホームディレクトリに UserDir で指定したディレクトリを 作成することで、ユーザもウェブページを公開できる。 |
DirectoryIndex | index.html | URL がディレクトリ名で 要求された場合にディレクトリに補完するデフォルトのファイル名 |
FollowSymLinks | off | シンボリックファイルを無条件にたどる場合は、on にする。 off の場合は、ServerRoot と DocumentRoot と UserDir ディレクトリ内のシンボリックリンクだけに制限される。 |
DefaultType | text/plain | 判別不能ファイルのデフォルトのメディアタイプ |
BindAddress | * | クライアントからの要求を待ち受ける IP アドレス。 "*" を指定した場合(あるいはコメントアウトした場合)は、 すべての IP アドレスからの要求を受けつける。 マルチホーム環境で特定の IP アドレスからのみ要求を受けつける場合に、 指定すると良いでしょう。 |
Client Error (4xx) と Server Error (5xx)
のエラーメッセージをカスタマイズする機能です。
これを用いることにより、
404 Not Found 時のエラーページに検索エンジンなどを埋め込むことも可能になります。
書式は
ErrorDocument "エラーコード" "HTML ファイルのパス"
です。
設定は次のようにします。 この場合、該当ページが無い場合は、 /error/missing.html の内容をブラウザに返します。
ErrorDocument 404 /error/missing.html
注意事項:
エラードキュメントは、DocumentRoot からのパスとなります。
そのため、バーチャルホスト機能を用いた場合は、
各バーチャルホスト毎の DocumentRoot 以下に作成しなければなりません。
基本項目のパラメータ以外に、次の4種類のエイリアス設定項目があります。
エイリアス設定項目の引数は、2つです。
AddType application/x-httpd-cgi cgi
AddType text/x-server-parsed-html shtml
AddType "text/html; charset=ISO-2022-JP" html
AddType "text/html; charset=EUC-JP" html
AddType "text/html; charset=Shift_JIS" html
一番目の設定は、サフィックスが cgi のファイルは どこにあっても CGI コマンドとして実行されることを意味します。
二番目は、SSI を利用する場合のファイルのサフィックスです。 SSI モジュールのロード時に自動的に設定されます。
残りの三つは、ウェブサーバで提供する HTML テキストの文字セットを指定します。 それぞれ、JIS コード(ISO-2022-JP)、日本語 EUC コード(EUC-JP)、 シフト JIS コード(Shift_JIS)を表しています。 Netscape Navigator 4.x や Netscape Communicator 4.x では、 これらのいずれかを指定しないと、文字化けするとの情報があります。
Example:
Redirect /bar http://elsewhere/foo/bar
Alias /icons/ /usr/local/wyvern/icons/
Alias /images/ /usr/local/wyvern/images/
Alias /style/ /usr/local/wyvern/style/
Alias /manual/ /usr/local/wyvern/manual/
ScriptAlias /cgi-bin/ /usr/local/wyvern/cgi-bin/
Wyvern では、起動時にモジュールを読みこむことにより機能拡張ができます。
書式は
AddModule "モジュール名" "モジュールファイルのパス"
です。
現在、次の8つのモジュールが使用できます。
モジュールを使用しない場合は、行頭に "#" を既述して、
コメントアウトしてください。
AddModule | log | modules/log.mod |
AddModule | ident | modules/ident.mod |
AddModule | access | modules/access.mod |
AddModule | auth | modules/auth.mod |
AddModule | dir | modules/dir.mod |
AddModule | cgi | modules/cgi.mod |
AddModule | ssi | modules/ssi.mod |
AddModule | gzip | modules/gzip.mod |
バーチャルホストの設定は、 "<VirtualHost>"と "</VirtualHost>"内で行います。 "www.virtual.domain",ServerAdmin および DocumentRoot は必須項目です。 ErrorLog と AccessLog を指定しない場合は、 バーチャルホストのログはサーバの基本項目で指定したログファイルに出力されます。
<VirtualHost "www.virtual.domain"> ServerAdmin web-admin@virtual.domain DocumentRoot /virtual/path/here # 以下の項目はオプショナル ErrorLog logs/virtual-error_log AccessLog logs/virtual-access_log UserDir public_html DirectoryIndex index.html FollowSymLinks on DefaultType text/plain Alias /icons/ /virtual/path/icons/ ScriptAlias /cgi-bin/ /virtual/path/cgi-bin/ </VirtualHost>