Apacheは広くつかわれているWWWサーバで、多くのOSで バイナリパッケージをインストールすることができるので簡単に インストールできます。 ここではこの Apache サーバの設定方法を説明します。
設定ファイル
apacheの設定ファイルはhttpd.confです。このファイルは標準の インストールでは/usr/local/apache/confにありますが、 OSによっては/etc/apache/にあったりします。 どこにあるかわからない場合は以下のコマンドを使って探してください。
# find / -name httpd.conf -print
httpd.confの設定
httpd.confの場所がわかったら、 そのファイルの内容を編集して設定を行います.必ずしなければならない設定
以下の内容は必ず設定してください.
設定する部分 内容 例 Port サーバが接続を待つポート番号 Port 80ServerAdmin サーバの管理者のメールアドレス ServerAdmin root@fc-lab.comServerName サーバの管理者のメールアドレス ServerName www.fc-lab.comDocumentRoot ページを入れるディレクトリ DocumentRoot "/usr/local/apache/htdocs"
ページのアクセス制限に関する設定
次にCGIやSSIなどが使えるかどうか設定します。 この設定はディレクトリごとに行うことができます。 デフォルトの設定を行っているのは以下のところです。
<Directory /> Options FollowSymLinks ExecCGI Includes AllowOverride AuthConfig Limit </Directory>デフォルトの設定を特定のディレクトリのみ設定を変更したい場合は そのディレクトリを <Directory /usr/local/apache/htdocs>とか <Directory /home/*public_html> のように指定して設定を書き加えます.
Options
Optionsのところで設定できるものは以下のとおりです.
None 許可しない All MultiViews を除き、すべてのオプションが利用可能です。 ExecCGI CGI スクリプトの実行を許可します。 FollowSymLinks サーバは、このディレクトリ内でシンボリックリンクをたどるようになります。 Includes サーバインクルードを許可します。 IncludesNOEXEC サーバインクルードを許可しますが、CGIスクリプトの #exec コマンドと #include コマンドを不許可にします。 Indexes もし、URLのマッピング先がディレクトリであるリクエストを受けた場合に、 そのディレクトリ内に DirectoryIndex (e.g. index.html)がなければ、 サーバはディレクトリ内のリストを書式化して返します。 MultiViews Content negotiated の MultiViews を許可します SymLinksIfOwnerMatch サーバは、ターゲットのファイルかディレクトリがへの シンボリックリンクがサーバは、 ターゲットのファイルかディレクトリが同じユーザidによって所有されている シンボリックの場合のみ、リンクにをたどります。 AllowOverride
これは該当のディレクトリを.htaccessファイルにより アクセス制限などの設定をオーバーライドできるかを指定するものです。
AuthConfig 認証ディレクティブの使用を許可する (AuthDBMGroupFile, AuthDBMUserFile, AuthGroupFile, AuthName, AuthType, AuthUserFile, require 等) FileInfo ドキュメントタイプを制御するディレクティブの使用を許可する (AddEncoding, AddLanguage, AddType, DefaultType, ErrorDocument, LanguagePriority 等) Indexes ディレクトリインデックスを制御するディレクティブの使用を許可する (AddDescription, AddIcon, AddIconByEncoding, AddIconByType, DefaultIcon, DirectoryIndex, FancyIndexing, HeaderName, IndexIgnore, IndexOptions, ReadmeName 等) Limit ホストアクセスを制御するディレクティブの使用を許可する (allow deny order). Options 特定のディレクトリに対する特徴の使用を許可する (Options and XBitHack). このようにしてオーバライドを許すと、 特定のディレクトリの.htaccessの中に、
AddType text/x-server-parsed-html .htmlを追加するとSSIが使えるようになりますし、 ユーザ認証なども行わせることができるようになります。
拡張子ごとの処理方法の設定
CGIやSSIを行わせるファイルの拡張子を以下のように指定します.
<IfModule mod_mime.c> AddType application/x-httpd-php3 .phtml .php3 AddHandler cgi-script .cgi AddType text/html .shtml .html AddHandler server-parsed .shtml .html </IfModule>これで.cgiという拡張子のファイルがあれば、それはCGIとして 実行されますし、.htmlと.shtmlという拡張子のファイルであれば SSIが実行されます。
ここで.plという拡張子のファイルもCGIとして実行させるためには 上記の設定を"AddHandler cgi-script .cgi .pl"とすればOKです。
またURLとしてディレクトリを指定した場合に取り出される ページを以下のように設定します.
<IfModule mod_dir.c> DirectoryIndex index.html index.phtml index.shtml </IfModule>もし.htmという拡張子のものを送信するためには、 DirectoryIndexのところに.htmを追加します.